https配置

方法1: HTTPS 访问本地静态网页

server{

    #监听443端口

    listen 443;

    #对应的域名,把baofeidyz.com改成你们自己的域名就可以了

    server_name xl8836.xyz;

    ssl on;

    #从腾讯云获取到的第一个文件的全路径

    ssl_certificate /etc/nginx/cert/cert-1540543343134_www.xl8836.xyz.crt;

    #从腾讯云获取到的第二个文件的全路径

    ssl_certificate_key /etc/nginx/cert/cert-1540543343134_www.xl8836.xyz.key;

    ssl_session_timeout 5m;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;

    ssl_prefer_server_ciphers on;

    #这是我的主页访问地址,因为使用的是静态的html网页,所以直接使用location就可以完成了。

    location / {

            #文件夹

            root /home/python/Desktop/html;

            #主页文件

            index index.html;

    }

}

server{

    listen 80;

    server_name xl8836.xyz;

    rewrite ^/(.*)$ https://xl8836.xyz:443/$1 permanent;

}

方法2: 通过 Gunicorn 访问Flask项目

# 如果是多台服务器的话,则在此配置,并修改 location 节点下面的 proxy_pass

upstream flask {

        server 127.0.0.1:5000;        # 多台服务器, 依次添加服务器的地址及端口 server host:port

        # server 127.0.0.1:5001;

}

server {

        # 监听80端口

        listen 80 default_server;

        listen [::]:80 default_server;

 

        root /var/www/html;

 

        index index.html index.htm index.nginx-debian.html;

 

        server_name _;

 

        location / {

                # 请求转发到gunicorn服务器

                proxy_pass http://127.0.0.1:5000;

                # 请求转发到多个gunicorn服务器

                # proxy_pass http://flask;

                # 设置请求头,并将头信息传递给服务器端

                proxy_set_header Host $host;

                # 设置请求头,传递原始请求ip给 gunicorn 服务器

                proxy_set_header X-Real-IP $remote_addr;

        }

}

方法3: 通过https协议访问Flask项目

upstream flask {

        server 127.0.0.1:5000;

        # server 127.0.0.1:5001;

}

server{

    #监听443端口

    listen 443;

    #对应的域名,把baofeidyz.com改成你们自己的域名就可以了

    server_name xl8836.xyz;

    ssl on;

    #从腾讯云获取到的第一个文件的全路径

    ssl_certificate /etc/nginx/cert/cert-1540543343134_www.xl8836.xyz.crt;

    #从腾讯云获取到的第二个文件的全路径

    ssl_certificate_key /etc/nginx/cert/cert-1540543343134_www.xl8836.xyz.key;

    ssl_session_timeout 5m;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;

    ssl_prefer_server_ciphers on;

    #这是我的主页访问地址,因为使用的是静态的html网页,所以直接使用location就可以完成了。

    location / {

            # 请求转发到gunicorn服务器

            proxy_pass http://127.0.0.1:5000;

            # 请求转发到多个gunicorn服务器

            # proxy_pass http://flask;

            # 设置请求头,并将头信息传递给服务器端

            proxy_set_header Host $host;

            # 设置请求头,传递原始请求ip给 gunicorn 服务器

            proxy_set_header X-Real-IP $remote_addr;

    }

}

server{

    listen 80;

    server_name xl8836.xyz;

    rewrite ^/(.*)$ https://xl8836.xyz:443/$1 permanent;

}

重要

配置完成后,检查一下nginx配置文件是否可用,有successful表示可用。

$ nginx -t // 检查nginx配置文件

配置正确后,重新加载配置文件使配置生效:

$ nginx -s reload // 使配置生效

到阿里云ECS的管理后台的安全组,修改端口过滤规则把80端口和443端口开放才能访问到。

 

 

至此,nginx的https访问就完成了,并且通过rewrite方式把所有http请求也转成了https请求,更加安全。

如需重启nginx,用以下命令:

$ service nginx stop // 停止
$ service nginx start // 启动
$ service nginx restart // 重启

lsof -i:端口号, 如:

lsof -i:5000 查看占用5000端口的应用

 

kill -9 4937 杀死PID为1062的应用

有的时候杀死一个不能全部结束, 所以需要查看一下

 

sudo pkill redis-server 关闭redis-server所有后台

sudo pkill gunicorn 关闭gunicorn所有后台

 

ps aux | grep redis-server 查看redis-server进程信息

ps aux | grep gunicorn 查看redis-server进程信息

 

后台启动gunicorn

gunicorn -w 1 -D -b 127.0.0.1:5000 --threads 16 manage:app

-w 进程

-D 后台运行

-b host:port        ip地址及端口

--threads int 线程数量

gunicorn -h 查看帮助, 建议使用 gunicorn -h | more # 查看过程使用 Enter 或者 Ctrl+F ^-^

manage:app 运行文件名称:Flask程序实例名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值