gpt4 book ai didi

python - 为什么在我的 CSS 中提供网络字体文件时会出现 500 错误?

转载 作者:太空宇宙 更新时间:2023-11-04 13:31:59 24 4
gpt4 key购买 nike

开始使用 Django 应用程序并暂时提供一些静态页面。一切似乎都正常,但我的 CSS 文件尝试加载的一些网络字体 Assets 收到 500 HTTP 响应。

我指的是我的 CSS 文件使用:

<link rel="stylesheet" type="text/css" href="{% static "css/styles.css" %}">

效果很好,但在 CSS 中有指向 webfonts 的链接,它遵循 FontSquirrel 生成的标准格式。例如:

@font-face {
font-family: 'allerbold';
src: url("../fonts/aller_bd-webfont.eot");
src: url("../fonts/aller_bd-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/aller_bd-webfont.woff") format("woff"), url("../fonts/aller_bd-webfont.ttf") format("truetype"), url("../fonts/aller_bd-webfont.svg#allerbold") format("svg");
font-weight: normal;
font-style: normal; }

CSS 引用了正确的文件夹(“css”和“fonts”文件夹在静态文件夹中处于同一级别)但终端和浏览器控制台 (Chrome) 都指示 HTTP 500 响应。

这是其中之一的回溯:

Traceback (most recent call last):
File "C:\Server\Python34\lib\wsgiref\handlers.py", line 137, in run
self.result = application(self.environ, self.start_response)
File "C:\Server\Python34\lib\site-packages\django\contrib\staticfiles\handlers
.py", line 68, in __call__
return super(StaticFilesHandler, self).__call__(environ, start_response)
File "C:\Server\Python34\lib\site-packages\django\core\handlers\wsgi.py", line
206, in __call__
response = self.get_response(request)
File "C:\Server\Python34\lib\site-packages\django\contrib\staticfiles\handlers
.py", line 58, in get_response
return self.serve(request)
File "C:\Server\Python34\lib\site-packages\django\contrib\staticfiles\handlers
.py", line 51, in serve
return serve(request, self.file_path(request.path), insecure=True)
File "C:\Server\Python34\lib\site-packages\django\contrib\staticfiles\views.py
", line 41, in serve
return static.serve(request, path, document_root=document_root, **kwargs)
File "C:\Server\Python34\lib\site-packages\django\views\static.py", line 65, i
n serve
response["Last-Modified"] = http_date(statobj.st_mtime)
File "C:\Server\Python34\lib\site-packages\django\utils\http.py", line 109, in
http_date
rfcdate = formatdate(epoch_seconds)
File "C:\Server\Python34\lib\email\utils.py", line 181, in formatdate
now = time.gmtime(timeval)
OSError: [Errno 22] Invalid argument
[25/Apr/2014 13:19:09] "GET /static/fonts/aller_bd-webfont.svg HTTP/1.1" 500 59

感谢您的帮助!

最佳答案

聚会有点晚了,但对于像我这样发现这个的其他谷歌人来说:

尝试删除“../”。在我的例子中,网络字体没有问题,但浏览器在“同源策略”方面存在问题(更多信息 at MDN )。简而言之:浏览带有“../”的字体并不总是被认为是同源的,所以删除它会解决问题。

关于python - 为什么在我的 CSS 中提供网络字体文件时会出现 500 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23302547/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com