首页 > 解决方案 > 无法从 Azure 上的 Django 加载静态 CSS

问题描述

我遵循了 DigitalOcean的本教程,并在我的settings.py.

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATIC_URL = '/static/

但是,在部署我的应用程序后,我发现 CSS 文件的请求已被取消,如 Chrome 工具中所示。

取消样式表

即使运行后我仍然会收到此错误:

$ python manage.py collectstatic

这给了我staticfiles目录中的文件adminapp. 请注意,我可以毫无问题地运行所有这些localhost

我通过切换 from to尝试了这个答案中的建议,但遇到了同样的问题。/static/static/

这是我在运行后立即在ls -laAzure 上运行时得到的目录结构。az webapp sshpython manage.py collectstatic

drwxr-xr-x 7 root root   4096 May 15 10:58 .
drwxrwxrwt 7 root root   4096 May 15 10:58 ..
drwxr-xr-x 2 root root   4096 May 15 10:58 .azure
-rwxr-xr-x 1 root root   2351 May 15 10:58 .gitignore
-rwxr-xr-x 1 root root    116 May 15 10:58 README.md
drwxr-xr-x 5 root root   4096 May 15 10:58 antenv
-rwxr-xr-x 1 root root 139264 May 15 10:58 db.sqlite3
drwxr-xr-x 3 root root   4096 May 15 10:58 project
-rwxr-xr-x 1 root root    665 May 15 10:58 manage.py
-rwxr-xr-x 1 root root    111 May 15 10:58 requirements.txt
drwxr-xr-x 4 root root   4096 May 15 10:58 staticfiles
drwxr-xr-x 6 root root   4096 May 15 10:58 app

鉴于我想在各自的应用程序目录中保留这种静态文件结构并且没有不与任何应用程序绑定的 CSS 文件,我不必STATICFILES_DIRS文档中所说的那样使用。

您的项目可能还会包含未绑定到特定应用程序的静态资产。除了在应用程序中使用 static/ 目录之外,您还可以STATICFILES_DIRS在设置文件中定义目录列表 ( ),Django 也会在其中查找静态文件。

标签: pythondjangodigital-oceandjango-staticfiles

解决方案


推荐阅读