Теперь у меня есть конфигурация 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. Это упрощает вещи.