我使用这个教程将 Django 网站部署到 Elastic Beanstalk 上:
https://realpython.com/blog/python/deploying-a-django-app-to-aws-elastic-beanstalk/
但是,我不知道在哪里以及如何放置 favicon.ico、robots.txt 和 sitemap.xml。有什么想法吗?
favicon.ico
和 sitemap.xml
,您可以将它们放在 static/
目录中,并在模板中使用静态网址引用它们。例如:<link rel="shortcut icon" type="image/png" href="{{STATIC_URL}}/favicon.ico"/>
你的robots.txt
可能需要一些额外步骤(就像任何django应用程序一样)。你可以将它放置在templates
目录中,并在urls.py
中添加以下内容:
urlpatterns = patterns('',
...
(r'^robots\.txt$', TemplateView.as_view(template_name='robots.txt', content_type='text/plain')),
)
django.contrib.sitemaps
框架:docs。如果您只有一定数量的静态页面,请按照以下方式操作: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="...">
TemplateView
。 - Ewan