что заставляет доменные имена указывать на конкретную папку? - PullRequest
5 голосов
/ 25 октября 2011

Я работаю на сервере, который унаследовал от кого-то, и я не большой специалист по вопросам DNS.на сервере размещено несколько доменов, и все они находятся в папке / vhosts /.я не могу понять, как домены указывают на свою папку там.Я проверил httpd.config, и нет такой директивы:

<VirtualHost *>
ServerName www.domain.tld
DocumentRoot /www/domain
</VirtualHost>

Я также проверил администратора домена, и все они указывают на IP-адрес сервера.так чего мне не хватает?

Ответы [ 2 ]

9 голосов
/ 25 октября 2011

DocumentRoot - это директива, которая сообщает имя папки для определенного размещенного домена.Для каждого домена, размещенного на сервере, в файле httpd.conf будет один узел <VirtualHost>.Так, например, example1.com и example2.com размещаются на этом сервере, и их запросы обслуживаются соответственно из / vhosts / www / example1 и / vhosts / www / example2.

<VirtualHost *>
DocumentRoot /vhosts/www/example1
ServerName www.example1.com
# Other directives here
</VirtualHost>

<VirtualHost *>
DocumentRoot /vhosts/www/example2
ServerName www.example2.org
# Other directives here
</VirtualHost>

Иногда эти настройкиопределено в других конфигурационных файлах.Другие конфигурационные файлы включаются в httpd.conf при запуске.Если вы не можете найти файл, в котором он есть, я бы посоветовал вам запустить

grep -ri "VirtualHost" /.

4 голосов
/ 25 октября 2011

Система может быть настроена для массового виртуального хостинга:

Альтернативно, конфигурации для виртуальных хостов могут быть объявлены во включаемых файлах, введенных с помощью оператора Include. Отметьте httpd.config, чтобы включить утверждения для других vhosts ...

если ничего не помогает, перейдите в корень каталога конфигурации и выполните следующее:

 sudo grep -Ri www.domain.tld . 

Должен дать вам подсказку, где искать ...

...