Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не срабатывает директива VirtualHost
 
 автор: babilonian   (29.07.2007 в 12:45)   письмо автору
 
 

Прописываю локальные адреса в виде:

NameVirtualHost 127.0.0.1:80

<VirtualHost 127.0.0.1:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "C:/Internet"
    ServerName localhost
    ErrorLog logs/localhost-error.log
    CustomLog logs/localhost-access.log common
    RewriteLog logs/localhost-rw.log
    RewriteLogLevel 9
</VirtualHost>

<VirtualHost 127.0.0.1:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "C:/Internet/host1"
    ServerName host1
    ErrorLog logs/host1-error.log
    CustomLog logs/host1-access.log common
    RewriteLog logs/host1-rw.log
    RewriteLogLevel 9
</VirtualHost>
...


Но почему-то апач при запросе любого из хостов, кидает на первый в списке. Кто знает, почему так?

   
 
 автор: Cyrax   (29.07.2007 в 16:24)   письмо автору
 
   для: babilonian   (29.07.2007 в 12:45)
 

Причём кидает на первый в списке также и для localhost'а.
Судя по всему, при различных ip такой проблемы бы не возникло. В любом случае хотелось бы, чтобы Apache различал хосты (как виртуальные, так и localhost) на одном и том же ip...

   
 
 автор: babilonian   (29.07.2007 в 18:29)   письмо автору
 
   для: Cyrax   (29.07.2007 в 16:24)
 

В том-то и дело, что обычно он спокойно все различает сколько IP не было. Сервер у меня стоит на тестовой машине, и все время все работало нормально. А тут глюки пошли... Сдается мне, просто снес какую-то настройку, весь вопрос в том какую именно.

   
 
 автор: cheops   (30.07.2007 в 10:35)   письмо автору
 
   для: babilonian   (29.07.2007 в 12:45)
 

В файле C:/Windows/system32/drivers/etc/hosts что прописано?

   
 
 автор: babilonian   (31.07.2007 в 00:21)   письмо автору
 
   для: cheops   (30.07.2007 в 10:35)
 

127.0.0.1 localhost
127.0.0.1 host1

   
 
 автор: Trianon   (31.07.2007 в 00:59)   письмо автору
 
   для: babilonian   (31.07.2007 в 00:21)
 

Listen 127.0.0.1:80
NameVirtualHost *:*
<VirtualHost *:*> 
    ServerAdmin webmaster@dummy-host.example.com 
    DocumentRoot "C:/Internet" 
    ServerName localhost 
    ErrorLog logs/localhost-error.log 
    CustomLog logs/localhost-access.log common 
    RewriteLog logs/localhost-rw.log 
    RewriteLogLevel 9 
</VirtualHost> 

Listen 127.0.0.1:80
NameVirtualHost *:*
<VirtualHost *:*> 
    ServerAdmin webmaster@dummy-host.example.com 
    DocumentRoot "C:/Internet/host1" 
    ServerName host1 
    ErrorLog logs/host1-error.log 
    CustomLog logs/host1-access.log common 
    RewriteLog logs/host1-rw.log 
    RewriteLogLevel 9 
</VirtualHost> 

   
 
 автор: Cyrax   (01.08.2007 в 22:42)   письмо автору
 
   для: Trianon   (31.07.2007 в 00:59)
 

Что означают звёздочки в имени хоста ?

____________________________________________________________
Да, это, конечно, решение, но хотелось бы, чтобы localhost не был виртуальным хостом и неявно (т.е. так, как это происходит после установки сервера до прописки виртуальных хостов) ассоциировался с папкой htdocs.

Кроме того, сервер ведёт себя нелогично. Имя localhost ассоциируется с адресом 127.0.0.1. Всё. Больше никаких явных ассоциаций нет и не должно быть. Единственная неявная ассоциация сервера - с папкой htdocs. Так почему после прописки виртуальных хостов сервер кидает localhost на первый виртуальный хост ?!

   
 
 автор: Trianon   (01.08.2007 в 23:45)   письмо автору
 
   для: Cyrax   (01.08.2007 в 22:42)
 

> Что означают звёздочки в имени хоста ?
любой адрес, любой порт

В приведенной мной конфигурации апач реагирует тем хостом, чей ServerName совпал с Полем заголовка запроса HOST. Адреса тут вообще не при чем.

Хотелось бы - делайте.

   
 
 автор: Cyrax   (02.08.2007 в 00:19)   письмо автору
 
   для: Trianon   (01.08.2007 в 23:45)
 

> любой адрес, любой порт
т.е. прямо так и указать в httpd.conf ?

> В приведенной мной конфигурации апач реагирует тем хостом, чей ServerName совпал с
> Полем заголовка запроса HOST. Адреса тут вообще не при чем.
Так если убрать localhost из списка виртуальных хостов, то Apache не будет уже реагировать "тем хостом, чей ServerName совпал с Полем заголовка запроса HOST". А чем будет реагировать - не могу понять...

> Хотелось бы - делайте.
Времени нету...

   
 
 автор: GMile   (03.08.2007 в 11:16)   письмо автору
 
   для: Cyrax   (01.08.2007 в 22:42)
 

Вообще-говоря localhost тоже прописывают в виртуальных хостах (причем первым) чтоб не возникало путаницы, т.к. виртуальные хосты имеют всё-же высший приоритет по сравнению с базовым. Это немного нелогично, но факт. Так что во избежание проблем пропишите localhost в VirtualHost'ах

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования