2016-09-04 4 views
0

У меня есть приложение Django, работающее на AWS at, www.domain.com/admin. Он не содержит никаких html-страниц, мы используем Django-Admin.Хостинг статический веб-сайт с Django

Теперь у меня должен быть сайт с номером www.domain.com. у меня есть свой сайт пакет в таком виде,

site 
|-sass 
|-js 
|-img 
|-fonts 
|-css 
|-index.html 

Я копировать-вставить мою папку site в мое приложение Django на my_django_app/templates/

Кроме того, прибавил:

url(r'^$', TemplateView.as_view(template_name='site/index.html')), 

внутри my_django_app/my_django_app/urls.py.

И, обновленный мой settings.py с,

STATICFILES_DIRS = [ 
    os.path.join(BASE_DIR, 'templates/site'), 
] 

Теперь, когда я runserver и перейти к www.domain.com, он загружает мой HTML-файл без CSS, JS и изображений.

Просьба предложить мне, что я делаю неправильно.

Я новичок в python, а также никогда не размещал сайт раньше.

+0

Я бы предпочел не использовать Django для статического веб-сайта. Такой веб-сервер, как Nginx, будет быстрее, чем Django. – xyres

+0

@xyres Я понимаю это, но в моем случае у меня есть только один экземпляр, и мне нужно, чтобы веб-сайт и его панель управления были на одном IP-адресе. – itsji10dra

+0

Вы можете настроить свой веб-сервер для пересылки трафика на Django, если запрос выполняется на 'www.domain.com/admin', а серверы - другие URL-адреса напрямую. – xyres

ответ

1

Этот ответ - this comment, а не ответ на исходный вопрос.

  1. В вашем Apache конфигурации, изменения: WSGIScriptAlias / в WSGIScriptAlias /admin.

  2. Добавить это перед </VirtualHost> закрывающим тегом:

    Alias//path/to/static/site/ 
    <Directory /path/to/static/site/> 
        Options Indexes FollowSymLinks 
        AllowOverride All 
        Order Deny,Allow 
        Allow from all 
    </Directory> 
    

Я не проверял, но я считаю, что это должно работать.

+0

Спасибо :) Я проверю это ... – itsji10dra

Смежные вопросы