Zainstalowałem stronę Django do Elastic Beanstalk za pomocą tego samouczka: https://realpython.com/blog/python/deploying-a-django-app-to-aws-elastic-beanstalk/
Ale nie mam pojęcia, gdzie i jak umieścić plik favicon.ico, robots.txt i sitemap.xml. Jakieś pomysły?
Odpowiedzi:
1 dla odpowiedzi № 1Aby uzyskać działanie map witryn, możesz użyć django.contrib.sitemaps
struktura: docs. Lub jeśli masz statyczną liczbę stron, po prostu zrób tak:
urlpatterns = [
# your robots.txt (and/or humans.txt) file:
url(r"^robot.txt$", TemplateView.as_view(
template_name="txt/robots.txt",
content_type="text/plain"
)),
# your static sitemap:
url(r"^crossdomain.xml$", TemplateView.as_view(
template_name="txt/sitemap.xml",
content_type="application/xml"
)),
]
Dla favicon.ico
umieść go w swoim wnętrzu static
folder i użyj tego szablonu w swoim szablonie:
<link rel="icon" href="{% static "path/to/favicon.ico" %}" sizes="...">
Nie zapomnij obsługiwać wszystkich urządzeń: pełna lista favikonów
1 dla odpowiedzi nr 2
Dla favicon.ico
i sitemap.xml
możesz umieścić je w static/
i odwołaj się do nich w szablonie ze statycznym adresem URL. Na przykład.:
<link rel="shortcut icon" type="image/png" href="{{STATIC_URL}}/favicon.ico"/>
Twój robots.txt
jest nieco trudniejsze (jak w przypadku każdej aplikacji django). Możesz upuścić go do templates
katalog i twój urls.py
mieć następujące:
urlpatterns = patterns("",
...
(r"^robots.txt$", TemplateView.as_view(template_name="robots.txt", content_type="text/plain")),
)