пустой $DOCUMENT_ROOT с виртуальными хостами

mars37

Новичок
пустой $DOCUMENT_ROOT с виртуальными хостами

Раньше в работе я не использовал виртуальные хосты. В php-скриптах все пути указывал относительно $DOCUMENT_ROOT, например:
require_once($DOCUMENT_ROOT.'/../fns/design.php');

Теперь понадобилось в другом проекте использовать виртуальные хосты. Настроил в httpd.conf примерно так (реальные пути и названия заменены):
-----------------
NameVirtualHost 127.0.0.1:80

<VirtualHost 127.0.0.4>
DocumentRoot D:/Apache/htdocs/New_ProjectVirt_1/www
ServerName virt1.loc
ServerAlias virt1.loc
ErrorLog ...
CustomLog ...
</VirtualHost>

<VirtualHost 127.0.0.5>
DocumentRoot D:/Apache/htdocs/New_ProjectVirt_2/www
ServerName virt2.loc
ServerAlias virt2.loc
ErrorLog ...
CustomLog ...
</VirtualHost>

<VirtualHost 127.0.0.10>
DocumentRoot D:/Apache/htdocs/Old_Project/www
ServerName oldproject.loc
ServerAlias oldproject.loc
ErrorLog ...
CustomLog ...
</VirtualHost>
-----------------

Когда в браузере запрашиваю virt1.loc, virt2.loc или oldproject.loc, сервер обрабатывает правильные пути, те, что я указал в DocumentRoot соответствующего вирт.хоста. НО!!!
PHP-переменная $DOCUMENT_ROOT пуста! Из за этого не работает старый проект. Хотя в $_SERVER['DOCUMENT_ROOT'] лежит правильное значение.

Вопрос: что нужно сделать в httpd.conf, чтобы для каждого вирт.хоста была правильная PHP-переменная $DOCUMENT_ROOT?
 

mars37

Новичок
Разве DOCUMENT_ROOT появляется только при включённом registr_globals? Вот это я дал маху!!! Всегда использовал $_GET, $_POST, $_SESSION и т.д. и не подозрезал что у document_root ноги оттуда-же растут! Блин!
Надо делать замену...
 
Сверху