Tia*_*ica 5 python django ubuntu static-files gunicorn
有一个名为 django_server 的 Django 项目。当我跑步时
\n\npython manage.py runserver\nRun Code Online (Sandbox Code Playgroud)\n\n页面按预期显示
\n\n\n\n然后,如果我跑
\n\ngunicorn django_server.wsgi:application --bind 0.0.0.0:8000\nRun Code Online (Sandbox Code Playgroud)\n\n页面显示无样式
\n\n\n\n检查控制台,可以看到 .css 和 .js 文件均出现以下错误
\n\n\n\n\n\n\n由于 MIME 类型 (\xe2\x80\ x9ctext / html\xe2\x80\x9d) 不匹配 (X-Content-Type-Options:\n nosniff)。
\n
NOT FOUND: /static/rest_framework/css/bootstrap.min.css\nNOT FOUND: /static/rest_framework/css/bootstrap-tweaks.min.css\n...\nRun Code Online (Sandbox Code Playgroud)\n\n在settings.py中我提到
\n\nBASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))\nSTATIC_URL = \'/static/\'\nSTATIC_ROOT = os.path.join(BASE_DIR,\'static\')\nRun Code Online (Sandbox Code Playgroud)\n\n这是文件夹结构
\n\n\n\n检查静态文件夹 ( ) 中的权限ls -l,它们显示为
drwxrwxr-x 4 tiago tiago 4096 jun 2 15:49 static\nRun Code Online (Sandbox Code Playgroud)\n\n检查发生问题的文件的权限并
\n\n\n\n也添加到settings.py
\n\nimport mimetypes\n\nmimetypes.add_type("text/css",".css",True)\nmimetypes.add_type("text/javascript",".js",True)\nRun Code Online (Sandbox Code Playgroud)\n\n但错误仍然存在。
\n你需要跑python manage.py collectstatic。
我建议settings.py您使用它whitenoise来提供您的文件。
1) pip install whitenoise
2)添加STATICFILES_STORAGEsettings.py
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
3)添加到你的MIDDLEWAREsettings.py
`MIDDLEWARE = [
'whitenoise.middleware.WhiteNoiseMiddleware',
'django.middleware.security.SecurityMiddleware',
...
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2222 次 |
| 最近记录: |