我只想把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,我可以看到图标。
我只想把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,我可以看到图标。
当前回答
第一个
将favicon.ico上传到应用程序的静态路径,或者在settings.py中通过STATICFILES_DIRS配置的路径
第二个
在app基础模板文件中:
{% load static %}
<link rel="shortcut icon" type="image/png" href="{% static 'favicon.ico' %}"/>
你可以让应用程序使用不同的favicon.ico文件。
除了
在项目/ urls . py
from django.templatetags.static import static # Not from django.conf.urls.static
from django.views.generic.base import RedirectView
将此路径添加到urlpatterns基本位置
path('favicon.ico', RedirectView.as_view(url=static('favicon.ico'))),
这可以让安装的app(比如admin,你不应该改变模板)和你忘记修改模板的app,也显示默认的favicon.ico
其他回答
有时重新启动服务器会有所帮助。
停止服务器,然后重新运行命令:python manage.py runserver 现在应该加载CSS文件了。
复制你的图标: / yourappname mainapp(例:核心)/静态/ mainapp(例:核心)/ img
然后转到mainapp模板(例如:base.html) 复制这个,在{% load static %}后面,因为你必须先加载静态。
<link href="{% static 'core/img/favi_x.png' %}" rel="shortcut icon" type="image/png" />
如果你允许的话
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
现在(2020年), 你可以在html文件中添加一个基本标签。
<head>
<base href="https://www.example.com/static/">
</head>
我在django 2.1.1中尝试了以下设置
base.html
<head>
{% load static %}
<link rel="shortcut icon" type="image/png" href="{% static 'images/favicon.ico' %}"/>
</head>
settings.py
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'` <br>`.............
项目目录结构
现场观看