1

Я запускаю свой Apache на Windows для целей разработки. Моя цель - настроить 2 локальных сайта: я сделал это в своем httpd.conf

<VirtualHost *:80>
    DocumentRoot C:\Users\Proxymis\Desktop\sites\site1
    ServerName site1.localhost
    <Directory C:\Users\Proxymis\Desktop\sites\site1>
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Это отлично работает. Теперь я хотел бы также добавить site2. Если я добавлю site2, я все равно перейду на site1 (*:80)

Я попытался изменить <VirtualHost *:80> на <site1.localhost*:80> Не удалось.

Я хочу сохранить один и тот же порт (80) для всех моих сайтов. Я попытался с псевдонимом: проблема в том, что корень документа указывает на установку Apache и, следовательно, ссылки, такие как /css.css, дает 404 ошибки

Любая подсказка?

1 ответ1

2

Я хотел бы также добавить site2

Вам нужно что-то вроде следующего.

В conf/extra/httpd-vhosts.conf:

<VirtualHost *:80>
    DocumentRoot C:/Users/Proxymis/Desktop/sites/site1
    ServerName site1
    ServerAlias *.site1
    <Directory C:/Users/Proxymis/Desktop/sites/site1>
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>
<VirtualHost *:80>
    DocumentRoot C:/Users/Proxymis/Desktop/sites/site2
    ServerName site2
    ServerAlias *.site2
    <Directory C:/Users/Proxymis/Desktop/sites/site2>
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

Заметки:

  • Я добавил строки ServerAlias выше

  • Пути обычно пишутся с / вместо \

  • Виртуальные хосты должны быть определены в conf/extra/httpd-vhosts.conf не в conf\httpd.conf

  • conf\httpd.conf должен содержать Include conf/extra/httpd-vhosts.conf

В C:\Windows\System32\drivers\etc\hosts:

127.0.0.1       site1
127.0.0.1       site2
::1             site1
::1             site2

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