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

Поддомены из папок на Apache

У меня есть веб-сайт на localhost, отображаемый в HOSTS как:

127.0.0.1 www.yorkshiretestingwebsite.com

127.0.0.1 yorkshiretestingwebsite.com

Однако в папке (C: /www/vhosts/yorkshiretestingwebsite.com) есть несколько подпапок, а именно:

Лидс

корпус

Шеффилд

и вместо того, чтобы вводить

http://www.yorkshiretestingwebsite.com/leeds

Я хотел бы попробовать получить такой URL-адрес:

http://leeds.yorkshiretestingwebsite.com

Я искал, как это сделать в Google, но не совсем уверен, как это сделать.

Я попробовал совет здесь - https://serverfault.com/questions/235311/automatic-subdomain-creation-in-htaccess-on-apache - и это сделал работать (хорошо, если у меня всего несколько папок), но что, если у меня их несколько? Я не хочу продолжать добавлять их к нему, поэтому я пытался найти решение.

Как лучше всего этого добиться?

Вам нужно создать новый VirtualHost, который будет динамически обслуживать поддомены на основе дерева каталогов:

<VirtualHost *:80>
    ServerName wildcard.yorkshiretestingwebsite.com
    ServerAlias *.yorkshiretestingwebsite.com
    VirtualDocumentRoot "C:/www/vhosts/yorkshiretestingwebsite.com/%1"
    ... (logging, permissions, etc) ...
</VirtualHost>

В %1 использует первый блок имени, поэтому leeds.yorkshiretestingwebsite.com укажет на C:/www/vhosts/yorkshiretestingwebsite.com/leeds/

Подробнее о VirtualDocumentRoot директиву можно найти Вот.