Назад | Перейти на главную страницу

Проблема с поддоменами Apache / Django

Теперь у меня есть конфигурация apache, которая работает только с доменом localhost (http: // localhost /).

Alias /media/ "/ścieżka/do/instalacji/django/contrib/admin/media/"
Alias /site_media/ "/ścieżka/do/plikow/site_media/"
<Location "/">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    SetEnv DJANGO_SETTINGS_MODULE settings
    PythonPath "['/thomas/django_projects/project'] + sys.path"
    PythonDebug On
</Location>
<Location "/site_media">
SetHandler none
</Location>

Как я могу заставить его работать для некоторых поддоменов, таких как pl.localhost или uk.localhost? Эти поддомены должны отображать ту же страницу, что и домен (localhost).

Второй вопрос: возможно изменить адрес localhost по умолчанию (http: // localhost /) к (http://localhost.com/) или (http://www.localhost.com/) или что-то другое?

Самое простое и довольно временное решение - отредактировать файл '/ etc / hosts' и добавить что-то вроде:

127.0.0.1        pl.localhost
127.0.0.1        uk.localhost
127.0.0.1        www.localhost.com

Он работает при условии, что перед запросом DNS-сервера проверяется / etc / hosts. Это конфигурация по умолчанию, но когда она не работает, проверьте '/etc/nsswitch.conf' и измените строку на:

hosts: ...

чтобы «файлы» были первой записью в последовательности.

Другое, более эффективное, но более трудоемкое решение - запустить собственный сервер имен bind9. Также проверьте конфигурацию хоста виртуального имени в Apache. Это упрощает вещи.