Django + Nginx + uWSGI
说明
python manage.py runserver模式常用于debug不能应用到生产环境当中的
三者之间关系如下图片来源

-
安装 nginx 和 uwsgi
可以选择不同方式,我这里的nginx是yum安装的, uwsgi是pip安装的
不同的安装模式会导致软件运行时候的身份不一样,在访问服务器内部资源注意程序运行的身份 -
配置nginx
location /
location /static
image.png
-
配置 uWSGI
注意uwsgi.ini文件的位置和manage.py处在同级目录
image.png
配置文件内容
image.png
-
测试
uwsgi uwsgi.ini
systemctl start nginx
-
常见问题
python manage.py runmserver
模式下 admin页面是正常的 但是在
uwsgi uwsgi.ini
下面时候访问admin页面丢失css样式
runserver模式下我们查找一下css文件发现在

css等文件根本不在我们nginx配置下面的static文件目录里面
- 问题解决
settings.py
文件加上STATIC_ROOT = os.path.join(BASE_DIR,"static")

然后执行
python manage.py collectstatic
再次查看/blog/static(static和media目录自建)

问题得到解决
网友评论