Я розгорнув веб-сайт Django на Elastic Beanstalk, використовуючи цей підручник: https://realpython.com/blog/python/deploying-a-django-app-to-aws-elastic-beanstalk/
Але я не маю уявлення, куди і як поставити favicon.ico, robots.txt і sitemap.xml. Будь-які ідеї?
Відповіді:
1 для відповіді № 1Для роботи ваших мап сайту можна скористатися django.contrib.sitemaps
рамки: документи. Або якщо у вас є статична кількість сторінок, як це зробити:
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"
)),
]
Для favicon.ico
помістіть його всередині себе static
папку та використовуйте цей тег у вашому шаблоні:
<link rel="icon" href="{% static "path/to/favicon.ico" %}" sizes="...">
Не забудьте підтримати всі пристрої: повний список фавіконів
1 для відповіді № 2
Для favicon.ico
і sitemap.xml
ви можете помістити їх у static/
каталог і посилайтеся на них у шаблоні зі статичною URL-адресою. Наприклад:
<link rel="shortcut icon" type="image/png" href="{{STATIC_URL}}/favicon.ico"/>
Твій robots.txt
трохи складніше (як у будь-якому додатку джанго). Ви можете опустити його в templates
директорії та у вашому urls.py
мають таке:
urlpatterns = patterns("",
...
(r"^robots.txt$", TemplateView.as_view(template_name="robots.txt", content_type="text/plain")),
)