uwsgi+nginx启动Django静态文件设置
总体思路: 设置好STATIC_ROOT后使用python manager.py collectstatic命令将django下所有的静态文件搜集到STATIC_ROOT下,然后让nginx的static路由指向这个目录
1. Django的settings.py文件中设置如下
STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') # 或者其它你存放静态文件收集后的目录STATIC_ROOT是用于存放Django管理命令collectstatic收集的所有静态文件的目录。
2. 运行collectstatic命令:
在部署前,确保运行以下命令来收集所有静态文件到STATIC_ROOT指定的目录中:
python manage.py collectstatic
3. 检查Nginx配置:
确保Nginx配置正确地指向了静态文件目录。一个典型的Nginx配置示例如下:
location /static/ {
alias /path/to/your/staticfiles/;
expires 30d;
}
其中的/path/to/your/staticfiles/应该替换为实际的STATIC_ROOT路径。
4. 重启uwsgi和Nginx:
在修改了任何配置后,都需要重启uwsgi和Nginx以使更改生效:
-
uwsgi --reload /path/to/uwsgi.pid # 如果你使用uwsgi的pid文件管理进程 sudo service nginx restart # 或者其他适合你系统的重启Nginx命令(nginx -s reload)

浙公网安备 33010602011771号