Почему favicon не показывается в производстве? - PullRequest
1 голос
/ 10 июня 2019

Favicon не отображается на вкладке, хотя код ответа Django равен 200. Статические файлы находятся в «myproject / build» (и «settings.py» в «myproject / server», а приложение в «myproject / blog»).«).Хотя HTML-страница с файлами CSS и JS обслуживается хорошо.И «favicon.ico» находится в том же каталоге, что и страница «index.html»

Я пытался открыть страницу по адресу «localhost: 8000» в разных браузерах, и я получил то же самое: favicon isnне отображается на вкладке. Я также посмотрел на «Источники» в настройках разработчиков: нет файла 'favicon.ico'

settings.py:

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'build/static')
]
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'

urls.py (в 'server /'):

urlpatterns = [
    path('admin/', admin.site.urls),
    path('api/', include('blog.api.urls')),
    re_path('.*', TemplateView.as_view(template_name='index.html'))
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

index.html (в 'build /'):

<link rel="shortcut icon" href="/favicon.ico" />

Консоль:

[10/Jun/2019 09:57:29] "GET /favicon.ico HTTP/1.1" 200 2242

UPD: я выполнил команду python manage.py collectstatic, но у меня все еще возникает та же проблема с favicon

1 Ответ

4 голосов
/ 10 июня 2019

ваш favicon находится в статической папке:

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