我是生产人员的新手。我在数字海洋上部署了我的第一个Django应用程序。它正在工作。
代码可以正常更新,但是问题出在通过nginx服务的静态文件中。
我更新了静态文件,然后重新启动nginx和gunicorn,但它们在我的产品网站中不存在。
我检查了chrome开发工具,它正在提供旧的静态文件。
我检查了产品仓库中是否存在这些更改,但是nginx似乎并没有使用最新的静态文件。我采取的步骤
Run collectstatic command
Restart the nginx
Restart the gunicorn
静态文件的nginx配置
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root /home/djangoadmin/pyapps/hkc_project;
}
这是静态设置:
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'hkc/static')
]
要执行此操作,我还需要做什么吗?
预先感谢
答案 0 :(得分:0)
据我所知,nginx最好的使用静态文件的方法是:
location /static {
autoindex on;
alias /home/djangoadmin/pyapps/hkc_project;
}
alias
是服务整个目录的正确方法。
autoindex
处理以斜杠('/')结尾的请求,并生成目录列表。