我发现这个解决方案是用django服务favicon.ico。
(r'^favicon\.ico$',
'django.views.generic.simple.redirect_to',
{'url': settings.MEDIA_URL+'images/favicon.ico'}),
我不明白为什么它只适用于开发服务器。
转到/favicon.ico适用于开发人员,不适用于debug=False
。
它应该重定向到/media/images/favicon.ico(由apache提供),如果你直接访问它,它会工作。
有什么想法吗?
答案 0 :(得分:51)
我建议不要使用django服务于favicon,除非你绝对不得不这样做。相反,在Web服务器配置中添加一个设置,添加指向favicon的别名。
例如,在apache中:
Alias /favicon.ico /path/to/media_url/images/favicon.ico
答案 1 :(得分:29)
这不是您问题的直接答案,但您可以将此用于favicon:
<link rel="shortcut icon" href="{{ STATIC_URL }}img/favicon.ico" />
答案 2 :(得分:16)
redirect_to一直是deprecated in Django 1.5。您可以使用基于类的RedirectView
from django.conf import settings
from django.views.generic import RedirectView
urlpatterns = patterns('',
(r'^favicon\.ico$', RedirectView.as_view(url=settings.MEDIA_URL + 'images/favicon.ico'))
)