码迷,mamicode.com
首页 > Web开发 > 详细

django+uwsgi+nginx+https

时间:2019-12-15 20:11:50      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:密钥   time   new   启动   cli   serve   nginx   软件包安装   xxx   

uwsgi

  在项目的根目录(如/opt/project,和app平级)下建uwsgi.ini这个文件。

[uwsgi]
http = 127.0.0.1:8080 # django的启动端口
chdir = /opt/project/ #项目的app下的wsgi
module = xxx/xxxx.wsgi #这个就是项目下包含settings那个文件夹下的wsgi文件
socket=/home/deepcam/python/cmdb/uwsgi.sock
master = true #启用主进程
processes = 4 #运行进程数
threads = 2 #线程数
enable-threads = True #启用线程
pidfile = uwsgi.pid # 这个可以用来停掉uwsgi

  然后在这里记得要把settings里面的ALLOWED_HOSTS改成[‘*‘],在项目的根目录下输入命令:

uwsgi -d --ini uwsgi.ini # 后台启动uwsgi,把-d去掉就不是后台启动了。
uwsgi --stop uwsgi.ipid # 停掉这个uwsgi

  这里注意,http的端口号可以随便改,http、chdir、module是必须的。

HTTPS

  进入到nginx目录下,如果是使用系统自带软件包安装是/etc/nginx这个文件夹。

cd /etc/nginx/
mkdir ssl
cd ssl
openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr 
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

  这一套是建立密钥,如果是HTTP的话这一套就不用搞了

NGINX

  修改 nginx.conf这个文件,在http里面加入如下配置:

    server {
       #listen       80;
        listen       443;
        server_name  localhost;
        charset utf-8;

       ssl on;
       ssl_certificate /etc/nginx/ssl/server.crt;
       ssl_certificate_key /etc/nginx/ssl/server.key;

        location / {
            include uwsgi_params;
            uwsgi_connect_timeout 30;
            client_max_body_size 75M;
        }
}

  这里面的server_name是访问的域名(可以是ip),比如127.0.0.1 或者是 www.xxxxx.com

nginx # 启动nginx
nginx -s reload # 平滑重启
nginx -t # 检查配置文件是否ok

  

django+uwsgi+nginx+https

标签:密钥   time   new   启动   cli   serve   nginx   软件包安装   xxx   

原文地址:https://www.cnblogs.com/XiaoBoya/p/12045633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!