..png)
vhost.conf, расположенный в etc/httpd/vhost.d/
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName localhost
ServerAlias localhost.example.com
DocumentRoot /var/www/html/example.com/public_html/
ErrorLog /var/www/html/example.com/logs/error.log
CustomLog /var/www/html/example.com/logs/access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.org
ServerAlias www.example.org
DocumentRoot /var/www/html/example.org/public_html/
ErrorLog /var/www/html/example.org/logs/error.log
CustomLog /var/www/html/example.org/logs/access.log combined
</VirtualHost>
httpd.conf, настройки по умолчанию, добавлены в конец:
Include /etc/httpd/vhosts.d/*.conf
Корневые каталоги:
DocumentRoot "/var/www/html"
Соответствующие каталоги для виртуальных хостов созданы в папке выше. Все разрешения выглядят правильными. Файл index.php в каждом public_html
каталоге. Однако, когда я ввожу localhost, он просто перенаправляет меня на страницу Apache 2 по умолчанию, следует ли мне удалить строку Include /etc/httpd/vhosts.d/*.conf
webserver works as required из каталога по умолчанию, обслуживая любой файл index, который я туда поместил.
решение1
Исходя из того, что вы набрали, похоже, что у вас нет синтаксических ошибок. Так что сделайте это в файле /etc/hosts (если вы делаете это напрямую с сервера):
127.0.0.1 example.org
127.0.0.1 example.com
Или в хост-файле вашего ПК:
YOURSERVERIP example.org
YOURSERVERIP example.com
И перейдите на этот домен вместо localhost.
Причина, по которой вы видите только веб-страницу Apache, заключается в том, что Apache необходимо знать, куда именно следует переходить. Поскольку у вас еще не настроен DNS, в Apache не отправляется никаких данных с указанным именем хоста, поэтому по умолчанию используется корневой каталог документа.
решение2
Поскольку строка Include находится после VirtualHosts, я предполагаю, что один из этих включенных vhosts переопределяет ваши новые. Что говорит "httpd -S"? (это может быть не "httpd", это может быть "apache2" или что-то еще). Флаг -S покажет вам все настроенные вами virtualhosts и поможет с отладкой.
Вы можете попробовать удалить строку include и посмотреть, заставит ли это ваши новые блоки работать. Вы также можете проверить свой журнал ошибок, чтобы увидеть, есть ли какие-либо предупреждения о вашем файле конфигурации.