Назад | Перейти на главную страницу

Виртуальный хост тянет с того же сайта?

У меня есть httpd.conf на Fedora 8, в котором я настраиваю файл виртуального хоста. Вот что у меня есть:

DocumentRoot "/var/www/html"
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

то ниже я пытаюсь настроить vhost, чтобы на сервере было несколько сайтов:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName kadence.tv
DocumentRoot /var/www/html/
</VirtualHost>

<VirtualHost *:80>
ServerName nacc.biz
DocumentRoot /var/www/html/nacc/
</VirtualHost>

также в каталоге / var / www / html / у меня есть файл index.php для сайта kadence ... когда я делаю это на любом сайте, я получаю индекс для сайта kadence ... любые идеи, что я делаю неправильно

ИЗМЕНИТЬ полное содержимое моего файла конфигурации httpd: Вот.

Если имя, которое вы используете, не соответствует ни одному из разделов виртуального хоста, по умолчанию будет использоваться первый. Я предполагаю, что вы заходите на сайт www.nacc.biz. Www имеет большое значение. Название должно точно совпадать. Поскольку в apache нет раздела виртуального хоста для www.nacc.biz, по умолчанию он использует первый (kadence.tv).

Взгляните на директиву ServerAlias ​​и используйте ее, чтобы указать все имена серверов, которые вы планируете использовать.

1 Проверка активна ИмяVirtualHost. Откройте файл /etc/apache2/ports.conf:

NameVirtualHost *:80

2 Проверить DNS

# ping app.local
PING localhost.localdomain (127.0.0.1) 56(84) bytes of data.

# ping john.app.local
PING localhost.localdomain (127.0.0.1) 56(84) bytes of data.

3 Проверьте конфигурацию Apache (/ etc / apache2 / sites-enabled / 000-default):

<VirtualHost *:80>
        ServerName app.local
        DocumentRoot /var/www
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>
</VirtualHost>

<VirtualHost *:80>
        ServerName john.app.local
        DocumentRoot /var/www/john
</VirtualHost>

$ sudo apache2ctl configtest
Syntax OK

$ sudo  apache2 -S
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
         default server app.local (/etc/apache2/sites-enabled/000-default:1)
         port 80 namevhost app.local (/etc/apache2/sites-enabled/000-default:1)
         port 80 namevhost john.app.local (/etc/apache2/sites-enabled/000-default:12)

4 Тестовый Apache:

$ curl http://john.app.local
john
$ curl http://app.local
<html><body><h1>It works!</h1>
<p>This is the default web page for this server.</p>
<p>The web server software is running but no content has been added, yet.</p>
</body></html>