我只想把favicon。ico放到我的staticfiles目录中,然后让它显示在我的应用程序中。

我怎样才能做到呢?

我已经把favicon.ico文件放在我的staticfiles目录中,但它没有显示,我在日志中看到了这一点:

127.0.0.1 - - [21/Feb/2014 10:10:53] "GET /favicon.ico HTTP/1.1" 404 -

如果我去http://localhost:8000/static/favicon.ico,我可以看到图标。


当前回答

        <link rel="shortcut icon" type="image/png" href="{% static 'favicon/sample.png' %}" />

也可以运行:python manage.py collectstatic

其他回答

<link rel="shortcut icon" href="{% static 'favicon/favicon.ico' %}"/>

只需要在你的基本文件中添加它,就像第一个答案但ico扩展,并将其添加到静态文件夹

有时重新启动服务器会有所帮助。

停止服务器,然后重新运行命令:python manage.py runserver 现在应该加载CSS文件了。

在模板文件中

{% load static %}

然后在<head>标签内

<link rel="shortcut icon" href="{%  static 'favicon.ico' %}">

这假设您已经在settings.py中适当配置了静态文件。


注意:旧版本的Django使用load staticfiles,而不是load static。

通用解决方案

你可以像在其他框架中一样在Django中显示favicon:只需要使用纯HTML。

将以下代码添加到HTML模板的头部。 如果favicon在整个应用程序中是相同的,最好是到您的基本HTML模板。

<link rel="shortcut icon" href="{% static 'favicon/favicon.png' %}"/>

前面的代码假设:

在静态文件夹中有一个名为“favicon”的文件夹 favicon文件名为favicon。png 您已经正确地设置了设置变量STATIC_URL

你可以在维基百科https://en.wikipedia.org/wiki/Favicon的这篇文章中找到关于文件格式支持和如何使用favicons的有用信息。 我可以推荐使用。png格式的浏览器兼容性。

编辑: 正如一条评论所言, “不要忘记在模板文件顶部添加{% load staticfiles %} !”

如果你允许的话

Alias /favicon.ico /var/www/aktel/workspace1/PyBot/PyBot/static/favicon.ico

为虚拟主机添加别名。(在apache配置文件中)类似于robots.txt

Alias /robots.txt /var/www/---your path ---/PyBot/robots.txt