2014-09-29 2 views
0

Я запускаю проект Django в suburl, например www.example.com/django. Все работает нормально, но мои статические файлы не работают на этом suburl, так как они, которые они берут, являются главными, как www.example.com/static/path_to_files, но он должен взять URL как www.example.com/django/static/path_to_files.URL для статических файлов в проекте Django

Это может быть для других URLs тоже, потому что я думаю, что каждый раз, когда я использую любой URL для любой ссылки он должен взять на себя имя хоста с suburl как www.example.com/django вместо www.example.com.

Вы также можете найти this вопрос для получения дополнительной информации о файлах конфигурации сервера.

ответ

0

В settings.py попробовать:

STATIC_URL = '/django/static/' 

Более подробная информация здесь: https://docs.djangoproject.com/en/dev/howto/static-files/

+0

Да, он работает, но только для статических файлов. Мне нужно то же самое для всех типов URL-адресов. – Inforian

+0

Попробуйте добавить 'django' в начале каждого' url' в 'urlpatterns' –

0

Вы можете обслуживать их вручную в процессе разработки путем добавления строки в urls.py:

urlpatterns = patterns('', 
    # Media files 
    url(r'^media/(?P<path>.*)$', 
     'django.views.static.serve', 
     {'document_root': settings.MEDIA_ROOT, 'show_indexes': True} 
    ), 

    # Static files 
    url(r'^static/(?P<path>.*)$', 
     'django.views.static.serve', 
     {'document_root': settings.STATIC_ROOT, 'show_indexes': True} 
    ), 
) 

Не используйте это в производстве и прочитайте документ, его хорошо объяснили.

0

Определение MEDIA_URL и STATIC_URL в settings.py

MEDIA_URL = /django/media 
STATIC_URL = /django/static 

Затем предварять эту переменную при определении URL в шаблонах:

<a href="{{ MEDIA_URL }}/path_to_media_file/">media</a> 
<img src="{{ STATIC_URL }}/path_to_static_file" /> 

Теперь вы можете использовать эти переменные везде, где вы хотите создать URLs ,

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