资讯专栏INFORMATION COLUMN

使用Nginx为Leanote配置Https

CodeSheep / 2351人阅读

摘要:生成证书可以在网上买一个或者自己做一个这里有一个脚本可以自动生成证书假设得到了两个文件配置假设运行的端口是域名为那么可以配置如下本配置只有部分不全强制如果不需要请注释这一行修改路径到下同

生成SSL证书

可以在网上买一个, 或者自己做一个.
这里有一个shell脚本可以自动生成证书:

#!/bin/sh

# create self-signed server certificate:

read -p "Enter your domain [www.example.com]: " DOMAIN

echo "Create server key..."

openssl genrsa -des3 -out $DOMAIN.key 1024

echo "Create server certificate signing request..."

SUBJECT="/C=US/ST=Mars/L=iTranswarp/O=iTranswarp/OU=iTranswarp/CN=$DOMAIN"

openssl req -new -subj $SUBJECT -key $DOMAIN.key -out $DOMAIN.csr

echo "Remove password..."

mv $DOMAIN.key $DOMAIN.origin.key
openssl rsa -in $DOMAIN.origin.key -out $DOMAIN.key

echo "Sign SSL certificate..."

openssl x509 -req -days 3650 -in $DOMAIN.csr -signkey $DOMAIN.key -out $DOMAIN.crt

假设得到了两个文件: a.com.crt, a.com.key

配置Nginx

假设Leanote运行的端口是9000, 域名为a.com, 那么nginx.conf可以配置如下:

# 本配置只有http部分, 不全
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
    
    upstream  a.com  {
        server   localhost:9000;
    }

    # http
    server
    {
        listen  80;
        server_name  a.com;
        
        # 强制https
        # 如果不需要, 请注释这一行rewrite
        rewrite ^/(.*) https://jp_linode2.com/$1 permanent;
        
        location / {
            proxy_pass        http://a.com;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }
    }
    
    # https
    server
    {
        listen  443 ssl;
        server_name  a.com;
        ssl_certificate     /root/a.com.crt; # 修改路径, 到a.com.crt, 下同
        ssl_certificate_key /root/a.com.key;
        location / {
            proxy_pass        http://a.com;
            proxy_set_header   Host             $host;
            proxy_set_header   X-Real-IP        $remote_addr;
            proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
        }
    }
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/39201.html

相关文章

  • OA管理系统 - SpringBoot + AmazeUi

    摘要:本项目由共同开发完成前端后端截图展示登录首页人员信息系统监控模块系统日志建议去在线浏览一下在线浏览地址地址码云地址设计书环境框架插件工具内置用于记录日志文件内置用户缓存前端使用的模板用于标签的代码高亮内置用于显示统一图标内置一个带备注 showImg(https://segmentfault.com/img/bVbnFyA?w=1920&h=949); 本项目由 zzzmh & csy...

    enrecul101 评论0 收藏0
  • 程序员的一些常用技能点

    摘要:其他笔记还有一些其他的主流云笔记软件,像印象笔记,为知笔记,等,由于没有多做尝试,就不加以评价年最好用的云笔记软件推荐介绍是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。 目录: [TOC] Git Git介绍: Git是目前世界上最先进的分布式版本控制系统(没有之一),简单来说,Git 是一个管理你的「代码的历史记录」的工具。 Gi...

    baishancloud 评论0 收藏0

发表评论

0条评论

CodeSheep

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<