У меня есть следующая структура моих веб-проектов на моем жестком диске в /var /workspace /www /

firstdomain_com
 \- www
 \- anysubdomain
seconddomain_com
 \- dev
 \- api
 \- www

Мне нужно запустить все эти приложения на моем локальном компьютере (и иметь возможность правильно использовать .htaccess), поэтому мне нужно настроить мои /etc /hosts и /etc /apache2 /sites-enabled /*:

/ и т.д. / хосты

::1     ip6-localhost ip6-loopback www_firstdomain_com.local 

anysubdomain_firstdomain_com.local

/ И т.д. / apache2 / сайты с поддержкой / *

<VirtualHost www_firstdomain_com.local:80>
    DocumentRoot /var/workspace/www/firstdomain_com/www
    ...
</VirtualHost>
<VirtualHost anysubdomain_firstdomain_com.local:80>
    DocumentRoot /var/workspace/www/firstdomain_com/anysubdomain
    ...
</VirtualHost>

В случае большого количества (суб) доменов это кажется скучным и неэффективным.

Можно ли настроить Apache и /etc /hosts так, чтобы они могли обрабатывать подобные запросы автоматически, без ручной записи каждого из этих узлов в /etc /hosts и apache conf отдельно? Есть ли способ установить какой-то "подстановочный знак" или регулярное выражение в обоих файлах конфигурации?

1 ответ1

2

Apache освещает это в разделе « Динамически настраиваемый виртуальный хостинг», который можно найти по адресу:
http://httpd.apache.org/docs/2.2/vhosts/mass.html

К сожалению, вы не можете использовать подстановочные знаки в /etc/hosts . Лично я использую локальное named (DNS-сервер) на своих машинах, поэтому я могу легко играть с локальными зонами для подобных целей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .