【问题标题】:cannot read static files after deploying my project on pythonanywhere PYTHON DJANGO在 pythonanywhere PYTHON DJANGO 上部署我的项目后无法读取静态文件
【发布时间】:2021-10-03 01:04:04
【问题描述】:

我不知道我这样做是否正确,但在开发阶段我将所有静态文件放在项目的主目录中,如下所示:

我的项目

  • 我的应用程序

  • manage.py

  • 我的项目

    - settings.py
    - urls.py
    ...
    
  • 静态

    - css
         - somecssfile.css
    - js
         - somejsfile.js
    ...
    
  • 模板

现在我的 settings.py 文件如下所示:

STATICFILES_DIRS = [BASE_DIR / "静态"]

STATIC_URL = '/static/'

在我将项目部署到 pythonanywhere 后,我添加了STATIC_ROOT

STATIC_ROOT = '/home/jeremiramos/cvs/staticfiles/'

当我在 pythonanywhere 控制台上执行 collectstatic 时,它确实将我的静态文件复制到 staticfiles 文件夹,但它无法读取/加载我在每个页面上使用的静态文件,包括 admin 页面。

我在 pythonanywhere 上的静态文件设置如下所示:

我检查了我的控制台,但出现了一些错误:

Refused to apply style from 'http://jeremiramos.pythonanywhere.com/static/css/index.css/' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

我试过查看 pythonanywhere.com 的论坛,但似乎没有帮助。

谁能解释我做错了什么以及我应该怎么做?谢谢!

【问题讨论】:

    标签: python django


    【解决方案1】:

    由于http://jeremiramos.pythonanywhere.com/static/css/index.css 加载了实际文件,这意味着静态文件映射是可以的。尝试带有斜杠的 url(如您显示的错误消息中所示)会给出 404 和 MIME 类型错误消息可能是它的症状。从 url 中删除尾部斜杠并检查是否可以解决问题。

    【讨论】:

    • 对,我的问题在于我的代码,我如何访问我的 css 文件似乎是问题所在。我删除了尾部斜杠,它起作用了。非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-01
    • 1970-01-01
    • 2021-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-06
    相关资源
    最近更新 更多