nginx+uwsgi 部署django项目
首先确保python,django,nginx,uwsgi 全部是安装好得
一:用uwsgi部署django
1:新建 uwsgi.ini文件
[uwsgi] # 协议类型和端口号 http=:8000 #指定运行目录(项目目录) chdir=/data/wwwroot/Topological #项目目录下有一个 wsgi.py 文件 module=Topological.wsgi:application #开启的进程数量 processes=2 # 运行线程。 threads=2 #启用线程 enable-threads=True #允许主进程存在 master=True #指定pid文件的位置,记录主进程的pid号。 pidfile=uwsgi.pid #日志 daemonize=uwsgi.log #静态文件 static-map = /static=/data/wwwroot/Topological/static
2:启用配置文件
uwsgi --ini uwsgi.ini
二:nginx+uwsgi 部署django
1:配置uwsgi.ini文件
[uwsgi] # 协议类型和端口号 socket=127.0.0.1:8000 #指定运行目录 chdir=/data/wwwroot/Topological #项目目录下有一个 wsgi.py 文件 module=Topological.wsgi:application #开启的进程数量 processes=2 # 运行线程。 threads=2 #启用线程 enable-threads=True #允许主进程存在 master=True #指定pid文件的位置,记录主进程的pid号。 pidfile=uwsgi.pid #日志 daemonize=uwsgi.log #静态文件 静态文件由nginx代理 #static-map = /static=/data/wwwroot/Topological/static
2:配置nginx
server { # listen 8001; server_name 192.168.0.147; #charset koi8-r; access_log logs/host.access.log; #反向代理得路由 location / { include uwsgi_params; #通过uwsgi转发请求 uwsgi_pass 127.0.0.1:8000; #和uwsgi定义端口要保持一直 uwsgi_read_timeout 15; # 设置请求超时时间 # uwsgi_read_timeout 15; # 设置请求超时时间index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; #静态文件得路由 #/data/wwwroot/Topological/all_static 目录是收集静态文件的路劲 location /static { alias /data/wwwroot/Topological/all_static; #root html; } }
3:收集静态文件
(1):在setting.py中添加如下配置
STATIC_ROOT='all_static'
(2):执行命令,收集静态文件
python3 manage.py collectstatic
4:启动nginx