Относительное включение PHP с виртуальным каталогом на IIS7 - PullRequest
0 голосов
/ 18 мая 2011

У меня есть виртуальный каталог конфигурации root (с именем «config», указывающий на каталог внутри / wwwroot /), указанный в IIS7.Я хочу получить доступ к этому виртуальному каталогу программно через функцию «include», такую ​​как:

include '/config/main.php';

Я получаю Warning: require(config/main.php) [function.require]: failed to open stream ошибок.Я пробовал следующее:

/config/, \config\, ./config/, config/, ~/config/, $SERVER_['DOCUMENT_ROOT']/config/

Безрезультатно.Почему PHP должен быть таким мудрым по поводу относительных ссылок сайта !?На параде не будет дождя, но ASP может с легкостью обрабатывать относительные ссылки на сайты (или относительные документы с ../blah.php)!

Есть идеи?Я посмотрел на функцию set_include_path и пока попробую, но в принципе кажется, что это будет жестко задавать пути к моим каталогам - раздражает перемещение кода из сред разработки в среду разработки.

Ответы [ 2 ]

0 голосов
/ 17 ноября 2011

Проблема вроде закрыта, потому что я не смог найти удовлетворительный ответ, я просто перенастроил свою проблему, чтобы не было виртуальных каталогов.Блин PHP и относительные пути!Кажется, это проблема именно IIS.

Если кто-то найдет лучшее решение проблемы, я буду более чем счастлив переключить выбранный ответ.

0 голосов
/ 18 мая 2011

Попробуйте:

dirname(__FILE__).'\\config\\main.php';
...