uwsgi+nginx部署django项目

这里贴了自己的配置uwsgi:

#配置和nginx连接的socket连接
; http=127.0.0.1:8997 #调试可以用这个
socket=127.0.0.1:8997
#配置项目路径,项目的所在目录
chdir=/media/moyu/data/wwwroot/mysite/
#配置wsgi接口模块文件路径,也就是wsgi.py这个文件所在的目录名
wsgi-file=wsjsjfx/wsgi.py
#配置启动的进程数
processes=4
#配置每个进程的线程数
threads=2
#配置启动管理主进程
master=True
#配置存放主进程的进程号文件
pidfile=uwsgi.pid
#配置dump日志记录
daemonize=uwsgi.log
; static-map = /static=/media/moyu/data/wwwroot/mysite/static #可以检测配置静态文件是否生效

nginx的配置

user  root; 
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    server {
        listen       80;
        server_name  127.0.0.1;
        charset utf-8;
        location / {
           include uwsgi_params;
           uwsgi_pass 127.0.0.1:8997;
           uwsgi_param UWSGI_SCRIPT wsjsjfx.wsgi;
           uwsgi_param UWSGI_CHDIR /media/moyu/data/wwwroot/mysite/; #项目路径
           
        }
        location /static/ {
        root /media/moyu/data/wwwroot/mysite/; #静态资源路径
        autoindex on; 
        
        }
    }
}

这里有个坑,如果js 或者css加载显示403,可能是权限问题,用root用户暴力解决了
静态资源必须配置在

STATICFILES_DIRS = [
    os.path.join(PROJECT_DIR, 'statics'),
     '/media/moyu/data/wwwroot/mysite/wsjsjfx/static/',
]
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'

如果还是加载不出来,配置这个
STATICFILES_FINDERS = (
"django.contrib.staticfiles.finders.FileSystemFinder",
"django.contrib.staticfiles.finders.AppDirectoriesFinder"
)

posted @ 2021-07-25 09:57  shmily墨鱼  阅读(100)  评论(0编辑  收藏  举报