[django] django 앱에 파비콘을 표시하려면 어떻게해야합니까?
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
파비콘을 볼 수 있습니다.
답변
어디에나 포함 된 기본 또는 헤더 템플릿이 있다면 기본 HTML과 함께 즐겨 찾기 아이콘을 포함시키지 않겠습니까?
<link rel="shortcut icon" type="image/png" href="{% static 'favicon.ico' %}"/>
답변
간단한 트릭은 urls.py
파일 에서 경로를 재지 정하는 것입니다 . 예를 들어 다음과 같이 뷰를 추가하십시오.
from django.views.generic.base import RedirectView
favicon_view = RedirectView.as_view(url='/static/favicon.ico', permanent=True)
urlpatterns = [
...
re_path(r'^favicon\.ico$', favicon_view),
...
]
이것은 호스트 할 다른 정적 컨텐츠가 없을 때 즐겨 찾기 아이콘이 작동하도록하는 쉬운 방법입니다.
답변
템플릿 파일에서
{% load static %}
그런 다음 <head>
태그 내
<link rel="shortcut icon" href="{% static 'favicon.ico' %}">
settings.py에 정적 파일이 적절하게 구성되어 있다고 가정합니다.
참고 : 이전 버전의 Django는 사용 load staticfiles
하지 않습니다 load static
.
답변
범용 솔루션
Django에서 다른 프레임 워크에서와 같은 방식으로 즐겨 찾기 아이콘을 표시 할 수 있습니다. 순수한 HTML 만 사용하십시오.
HTML 템플릿의 헤더에 다음 코드를 추가하십시오.
favicon이 응용 프로그램에서 동일하면 기본 HTML 템플릿에 더 좋습니다.
<link rel="shortcut icon" href="{% static 'favicon/favicon.png' %}"/>
이전 코드는 다음을 가정합니다.
- 정적 폴더에 ‘favicon’이라는 폴더가 있습니다.
- 파비콘 파일의 이름은 ‘favicon.png’입니다.
- 설정 변수 STATIC_URL을 올바르게 설정했습니다
Wikipedia https://ko.wikipedia.org/wiki/Favicon 기사에서 파일 형식 지원 및 즐겨 찾기 아이콘 사용 방법에 대한 유용한 정보를 찾을 수 있습니다 . 범용 브라우저 호환성을 위해
사용 하는 것이 좋습니다 ..png
편집 :
한 의견에 게시 된
” {% load staticfiles %}
템플릿 파일 맨 위에 추가하는 것을 잊지 마십시오 !”
답변
settings.py
루트 정적 파일 디렉토리를 추가 하십시오 .
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
창조하다 /static/images/favicon.ico
즐겨 찾기 아이콘을 템플릿 (base.html)에 추가하십시오.
{% load static %}
<link rel="shortcut icon" type="image/png" href="{% static 'images/favicon.ico' %}"/>
urls.py
브라우저 에서 즐겨 찾기 아이콘을 찾기 때문에 URL 리디렉션을 만듭니다./favicon.ico
from django.contrib.staticfiles.storage import staticfiles_storage
from django.views.generic.base import RedirectView
urlpatterns = [
...
path('favicon.ico', RedirectView.as_view(url=staticfiles_storage.url('images/favicon.ico')))
]
답변
<link rel="shortcut icon" href="{% static 'favicon/favicon.ico' %}"/>
첫 번째 답변과 같은 기본 파일에 ico 확장자를 추가하고 정적 폴더에 추가하십시오.
답변
당신이 권한이 있다면
Alias /favicon.ico /var/www/aktel/workspace1/PyBot/PyBot/static/favicon.ico
가상 호스트에 별칭을 추가하십시오. robots.txt와 유사하게 (아파치 구성 파일에서)
Alias /robots.txt /var/www/---your path ---/PyBot/robots.txt