【发布时间】:2021-01-12 02:47:18
【问题描述】:
我知道这已经被问过几次了,但这些解决方案似乎都不适合我。这是我第一次部署 Django 项目,作为参考,我遵循了这个教程:https://linuxhint.com/create_django_app_ubuntu/
因此,完全有可能有什么东西完全从我头顶飞过。
nginx 配置(我尝试使用别名而不是 root,带有和不带有斜杠,确保静态文件不属于 root 等):
upstream django {
server 127.0.0.1:8000;
}
server {
listen 80;
location /static/ {
root /home/bryan/Projects/portfolio;
try_files $uri =404;
}
location / {
try_files $uri @send_to_django;
}
location @send_to_django {
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://django;
}
}
settings.py:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)
注意:
-
django.contrib.staticfiles已安装 -
python manage.py collectstatic似乎在工作 - 我相信我在模板中正确引用了静态文件:
{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'home/css/index.css' %}">
我的文件结构:
- 投资组合(django 项目根目录)
- 首页(django 应用)
- static(项目静态文件)
- home(家庭应用的静态文件)
- CSS
- home(家庭应用的静态文件)
除了静态文件之外,该网站在此设置下可以完美运行。
【问题讨论】:
标签: python-3.x django ubuntu nginx gunicorn