uwsgi + nginx + Django
注意关键点:
一、uwsgi 如果配置成 socket 只能和 nginx 一起使用才行,如果不想使用 nginx 只使用 uwsgi 可以用 http 的方式启动
二、nginx的配置文件因为需要把前端 dist 以及后端的都配置上,location 里不能相同,所以后端所有接口可以统一的加一个接口前缀
三、如果配置好 nginx 了访问时不用加端口号
四、可以使用 nginx -t -c /etc/nginx/nginx.conf 来检查配置是否有问题
五、root和alias都可以定义在location模块中,都是用来指定请求资源的真实路径,但 alias 需要以 '/' 结尾
pip install uwsgi
cd /opt/zbmbuilding
vim uwsgi.ini
[uwsgi]
chdir = /opt/zbmbulding
module = zbm.wsgi
# wsgi-file = /opt/zbmbulding/zbm/wsgi.py
master = true
processes = 3
buffer-size = 65536
socket = 0.0.0.0:8000
vacuum = true
pythonpath = /usr/bin/python
daemonize = /opt/zbmbulding/uwsgi.log
touch uwsgi.log
启动不了uwsgi:
ln /root/Py37/uwsgi /usr/bin/uwsgi
pkill -9 uwsgi
启动:uwsgi --ini uwsgi.ini
停止:uwsgi --stop uwsgi.pid
重启:uwsgi --reload uwsgi.pid
卸载:
pip3 uninstall uwsgi
sudo apt-get remove uwsgi
yum -y install nginx
nginx -V
cd /etc/nginx/
cd conf.d/
vim *.conf
server {
listen 80;
server_name localhost;
access_log /opt/zbm_access.log;
error_log /opt/zbm_error.log;
client_max_body_size 75M;
location / {
# root /usr/share/nginx/html;
root /opt/riskControl;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location /zbm {
include uwsgi_params;
uwsgi_pass 127.0.0.1:8000;
uwsgi_param UWSGI_SCRIPT zbm.wsgi;
uwsgi_param UWSGI_CHDIR /opt/zbmbulding;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location /static {
alias /opt/zbmbulding/static;
}
}

浙公网安备 33010602011771号