Разные виртуальные хосты с одним и тем же портом

#apache #virtualhost #virtual-hosts

#apache #virtualhost #виртуальные хосты

Вопрос:

Мне нужно иметь два виртуальных хоста с одинаковым портом прослушивания для разных проектов и с разными журналами. Вот что у меня получилось:

 <VirtualHost *:80>
        DocumentRoot /home/projects/smk
        ErrorLog /var/log/apache2/smk-error.log
        RedirectMatch ^/$ /cms
</VirtualHost>

<VirtualHost *:80>
        DocumentRoot /home/projects/smk/cms
        ErrorLog /var/log/apache2/smk-cms-error.log
</VirtualHost>

<VirtualHost *:80>
        DocumentRoot /home/projects/smk/deploy
        ErrorLog /var/log/apache2/smk-deploy-error.log
</VirtualHost>
  

Ответ №1:

Добавьте другую директиву ServerName во все виртуальные хосты:

 <VirtualHost *:80>
        ServerName dev.localhost
        DocumentRoot /home/projects/smk/cms
        ErrorLog /var/log/apache2/smk-cms-error.log
</VirtualHost>

<VirtualHost *:80>
        ServerName my-project.localhost
        DocumentRoot /home/projects/smk/deploy
        ErrorLog /var/log/apache2/smk-deploy-error.log
</VirtualHost>
  

Не забудьте добавить записи хоста для dev.localhost и my-project.localhost в /etc/hosts на 127.0.0.1 или любой другой ip, на который вы хотите, чтобы он указывал.

Комментарии:

1. Просто для добавления требуется добавить NameVirtualHost *:80 в httpd.conf файл. Это было прокомментировано по умолчанию (Apache / 2.2.34 (Unix))

Ответ №2:

Имя_сервера my-project.localhost DocumentRoot /home/projects/smk/журнал ошибок развертывания /var/log/apache2/smk-deploy-error.log

//Попробуйте добавить документ с ошибкой

Документ об ошибке 404 404.html

Необходимо создать обратную связь в вашем приложении.