nginx配置https证书,并使用flask

目的:使用https证书,满足微信小程序的服务器配置需要,另外还需要域名和域名解析,通过阿里云界面可配置完成

 

1、从阿里云控制台申请免费的CA证书,一个pem一个key文件;

2、将两个文件copy到服务器,/etc/nginx/目录下,新建一个cer文件夹;

3、修改/etc/nginx/nginx.conf

listen80的不动,同上一篇文章,支持flask uwsgi配置;

server {
        listen       443 ssl;
        server_name  www.clockone.xyz;
        #root         /usr/share/nginx/html;#注意是文件夹
        root         /etc/nginx/html;

        ssl_session_cache    shared:SSL:1m;
        ssl_certificate "/etc/nginx/cer/1750135_www.clockone.xyz.pem";
        ssl_certificate_key "/etc/nginx/cer/1750135_www.clockone.xyz.key";
        ssl_session_timeout  10m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        location / {
        }

    }

 

然后刷新配置文件,注意有一定的延迟时间,并且最好推出nginx文件后运行指令,避免缓存文件;

nginx -t

nginx -s reload

sudo service nginx restart (非必需)

nginx -s reload (再运行一遍)

 

4、截止以上完成了nginx的配置,但是要使用flask,在/etc/nginx/nginx.conf文件中还需要加上代理路由

(路由到http)

server {
        listen       443 ssl;
        server_name  www.clockone.xyz;
        #root         /usr/share/nginx/html;
        root         /etc/nginx/html;

        ssl_session_cache    shared:SSL:1m;
        ssl_certificate "/etc/nginx/cer/1750135_www.clockone.xyz.pem";
        ssl_certificate_key "/etc/nginx/cer/1750135_www.clockone.xyz.key";
        ssl_session_timeout  10m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        location / {
            proxy_pass http://www.clockone.xyz;
        }

    }

5、flask的启动文件

不需要专门设置

if __name__ == '__main__':
    app.run(host='0.0.0.0')

6、python flask项目下的uwsgi文件设置,和之前的文章说明相同,不需要修改;

进入项目目录

/root/apps/clock

killall -9 uwsgi

uwsgi config.ini

即可

你可能感兴趣的:(Java,阿里云服务器)