- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Django 新手。我遇到了一些困难,我的静态文件未正确加载。
我的元素目录如下所示:
我在 myNewWebSite/settings.py 中配置了以下设置:
PROJECT_APP_PATH = os.path.dirname(os.path.abspath(__file__))
PROJECT_APP = os.path.basename(PROJECT_APP_PATH)
PROJECT_ROOT = BASE_DIR = os.path.dirname(PROJECT_APP_PATH)
STATIC_URL = "/static/"
STATIC_ROOT = os.path.join(PROJECT_ROOT, STATIC_URL.strip("/"))
我的模板(templates/home/index.html):
{% load staticfiles %}
<html>
<head>
<link rel="stylesheet" type="text/css" href="{% static 'css/home.css' %}" />
</head>
<body>
<h1 id="test">Hello World, This is my first website in django</h1>
</body>
</html>
我在 static/css/home.css 中的样式:
body {
background-color: red;
}
#test {
border: 10px solid green;
}
我看不到这些更改的任何影响。仅显示消息 Hello World,...
。输出显示如下:
[08/Jun/2016 20:36:04] "GET /myhome/ HTTP/1.1" 200 178
[08/Jun/2016 20:36:04] "GET /static/css/home.css HTTP/1.1" 301 0
[08/Jun/2016 20:36:04] "GET /static/css/home.css/ HTTP/1.1" 404 4930
我已在 settings.py 和 local_settings.py(在夹层中)中设置了 DEBUG = False
。
问题是什么?
使用 --insecure
参数运行开发服务器解决了该问题。
感谢GDorn
IF DEBUG = False
THEN python manage.py runserver --insecure
最佳答案
如果 DEBUG=False,Django 不会提供静态文件。 --insecure
选项似乎是一种解决方法,或更准确地说,如果处于 Debug模式,开发服务器会自动不安全地运行。
正确的方法是在生产环境中运行python manage.pycollectstatic
并将远程代理服务器(nginx、apache等)指向结果文件夹(可以是在设置中配置)。或者,您可以将静态数据放入 AWS S3 存储桶中。
无论如何,您都不应该在生产中运行 python manage.py runserver
元素。如果您尚未部署,只需使用 DEBUG=True
测试您的元素。
另一个选项是向您的 URL 配置添加静态 View 。
# urls.py
from os import path
from django.conf import settings
from django.conf.urls import url
from django.views.static import serve
urlpatterns = [
# your patterns here
]
urlpatterns += [url(
r'^static/(?P<path>.*)$', serve,
{'document_root': path.join(settings.BASE_DIR, 'static/public')})]
显然,路径必须与您的元素相匹配。但即使这种方法在生产中也不推荐。它只是规避了如果 DEBUG = False 则 Django 不提供静态服务的事实。每当您对静态文件进行更改时,它仍然要求您运行python manage.pycollectstatic
。
关于python - django - 夹层 - 静态文件 - 令人沮丧的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37712665/
我是 Django 新手。我遇到了一些困难,我的静态文件未正确加载。 我的元素目录如下所示: 我的新网站 我的新网站 首页 静态 CSS home.css 模板 首页 索引 管理.py init.py
来自Mezzanine docs : By default the template pages/page.html is used, but if a custom template exists
所以我的网站在 DEBUG = True 下显示正常,但是当我将其更改为 False 时出现 200 服务器错误。我一直在阅读,发现 500 错误很常见,但我找不到关于 200 错误的任何信息。我的
我正在处理的 Django 项目是在我处理它之前由其他人设置的。它还有我不熟悉的夹层组件;一直不需要使用它。突然,我有一个错误,我不知道如何修复... 我有一个应用“Dashboards”,它开始时没
我在托管一个我在 Heroku 中创建的简单网站时遇到了一些问题。该网站是使用 Mezzanine 创建的,并使用了 whitenoise 和 gunicorn。问题是:我在某些静态资源(如 css
我在 displayable_links.js 上收到 500 错误。我认为这与我的 ssl 设置有关。使用 Django 1.9.1、Python 2.7.5、PostgreSQL 9.2.14 和
Django 夹层: 我的夹层博客中有一些页面和帖子。我创建了一个名为“test”的页面,其网址为 localhost:8000/test 。我可以将“博客页面”“测试”作为主页吗?我的意思是,在 l
我是一名优秀的程序员,十分优秀!