【问题标题】:DJANGO: Static files not loading in live server (but loads locally)?DJANGO:静态文件未在实时服务器中加载(但在本地加载)?
【发布时间】:2020-11-29 14:40:00
【问题描述】:

Django 网站(django 版本 1.11.29)未从实时服务器上的静态文件夹加载 css 和 js 脚本。但是在本地加载。有什么想法吗?

to css 似乎是正确的,但没有转到 css 样式表本身。

链接到 localhost 主机上的 css:

<link rel="stylesheet" href="/static/website/login/login-style.css">

链接到实时服务器上的 CSS:

<link rel="stylesheet" href="/static/website/login/login-style.css">

settings.py

import os

# other code...

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.11/howto/static-files/
#updated
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, STATIC_URL)

登录.html

<link rel="stylesheet" href="{% static 'website/login/login-style.css' %}">

静态文件夹结构:

blah\project\website\static\website\login

更新: 我意识到我需要通过python manage.py collectstatic 将所有文件复制到根静态文件夹以进行生产。

但是仍然没有加载。我错过了一步吗?更新设置.py

【问题讨论】:

  • Django 在生产环境中不提供静态文件。预计将由网络服务器完成。
  • collectstatic 仅将所有静态文件收集到在“STATIC_ROOT”上声明的目录中。您仍然需要告诉服务器静态文件的 URL。例如,在 pythonanywhere 上,您必须在 Web 应用设置中正确配置 URL 和 PATH。
  • 你在哪里部署?

标签: python css django django-views django-templates


【解决方案1】:

基于 django 文档,你应该使用 nginx 或其他 web 服务器来提供静态文件:

https://docs.djangoproject.com/en/3.0/howto/static-files/#deployment

如果您不想通过网络服务器提供服务,您可以使用 whiteNoise:

http://whitenoise.evans.io/en/stable/django.html

【讨论】:

    【解决方案2】:

    这对我有用:

    urls.py 上添加这一行到 urlpatterns :static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 所以它看起来像这样:

    urlpatterns = [
                   
                  ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    

    并导入静态:from django.conf.urls.static import static

    【讨论】:

      【解决方案3】:

      Django 仅在开发服务器上从“app/static/app/style.css”获取静态文件。当我们在真实服务器上部署时,它会从 assets 文件夹中获取。

      【讨论】:

        猜你喜欢
        • 2014-07-30
        • 2021-11-07
        • 2013-03-03
        • 2016-02-16
        • 2020-04-28
        • 2022-01-20
        • 2019-08-31
        • 2014-11-12
        相关资源
        最近更新 更多