Nginx   发布时间:2022-05-11  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了django – nginx不提供管理静态文件?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

澄清:以下错误仅适用于管理静态文件,即它特定于与Django管理员对应的静态文件.其余的静态文件完美运行.

问题

基本上,我无使用Ngix服务器访问管理静态文件.

它确实与Django的微服务器一起工作,并且collectstatic正在完成它的工作,这意味着它将文件放在静态文件夹中的预期位置.

网址是正确的,但我不能直接访问管理静态文件,但我可以访问其他人.所以,例如:

>我可以访问此URL(在浏览器中复制它):@H_981_12@myserver.com:8080/static/css/base/base.css
>但我无法访问此其他网址(在浏览器中复制):@H_981_12@myserver.com:8080/static/admin/css/admin.css

我试过了什么?

如果我将admin /目录结构复制到__other_admin_directory_name / __,然后我访问它确实有效@H_981_12@myserver.com:8080/static/__other_admin_directory_name__/css/admin.css

此外,

>我检查了权限,一切都很好.
>我尝试将ADMIN_MEDIA_PREFIX =’/ static / admin /’更改为ADMIN_MEDIA_PREFIX =’/ static / other_admin_directory_name /’,它不起作用.

最后,它似乎是一个重要的线索:

我试图将admin /目录结构复制到__admin_and_then_any_suffix / __中.然后我无法访问@H_981_12@myserver.com:8080/static/__admin_and_then_any_suffix/__/css/admin.css.因此,如果目录的名称以admin开头(例如管理或admin2),则它不起作用.

编辑 – 感谢@sarnold观察:

问题似乎是在Nginx@R_403_5665@/ etc / Nginx / sites-available / mysite中

LOCATIOn /static/admin {
   alias /home/vl3/.virtualenvs/vl3/lib/python2.7/site-packages/django/contrib/admin/media/;
}
最佳答案
我的建议:

>使用django 1.3(和ADMIN_MEDIA_PREFIX is deprecated now)
>在setTings.py中设置STATIC_URL and STATIC_ROOT
>在Nginx conf中定义一个静态条目(带有斜杠).不需要第二个解决static / admin /的问题:

LOCATIOn /static/  {
        alias /path/to/static/;
}

>使用应该收集管理员的collectstatic – >静态/管理员.它将与所有其他收集的静态媒体位于同一位置.

python manage.py collectstatic

大佬总结

以上是大佬教程为你收集整理的django – nginx不提供管理静态文件?全部内容,希望文章能够帮你解决django – nginx不提供管理静态文件?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: