![Почему я не могу установить два виртуальных хоста в Apache?](https://rvso.com/image/726825/%D0%9F%D0%BE%D1%87%D0%B5%D0%BC%D1%83%20%D1%8F%20%D0%BD%D0%B5%20%D0%BC%D0%BE%D0%B3%D1%83%20%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%82%D1%8C%20%D0%B4%D0%B2%D0%B0%20%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D1%85%20%D1%85%D0%BE%D1%81%D1%82%D0%B0%20%D0%B2%20Apache%3F.png)
На моем Debian установлен Apache, я хочу привязать два доменных имени к разным директориям.
cat /etc/hosts
127.0.0.1 hwy.local www.hwy.local
127.0.0.1 test.app www.test.app
Два доменных имени привязаны к 127.0.0.1.
cat /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
ServerName www.hwy.local
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error_hwy.log
CustomLog ${APACHE_LOG_DIR}/access_hwy.log combined
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName www.test.app
ServerAdmin webmaster@localhost
DocumentRoot /home/debian9/app
ErrorLog ${APACHE_LOG_DIR}/error_app.log
CustomLog ${APACHE_LOG_DIR}/access_app.log combined
<Directory /home/debian9/app>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Сохраните один и тот же файл test.html
в форматах /var/www/html
и /home/debian9/app
.
<p>it is a test</p>
Почему www.hwy.local/test.html
при открытии может www.test.app
возникнуть ошибка.
This site can’t be reached
решение1
Проблема не в Apache, а в вашем /etc/hosts
файле.
В файле hosts может быть только одна строка на IP-адрес. Поэтому ваш файл hosts должен выглядеть следующим образом:
127.0.0.1 hwy.local www.hwy.local test.app www.test.app
со всеми записями для 127.0.0.1 на одной и той же строке.