Я пытаюсь переместить некоторые сайты на новый сервер (работает Plesk 11), и я получаю следующую ошибку:
Предупреждение: file_exists () [function.file-exists]: действующее ограничение open_basedir. Файл (configuration.php) не входит в допустимый путь (ы): (C: \ Inetpub \ vhosts \ domain.com \ domains \ domain.com \ www \; C: \ Windows \ Temp) в папке C: \ Inetpub \ vhosts \ domain.com \ domains \ domain.com \ www \ index.php в строке 18
Но файл configuration.php
находится в папке C:\Inetpub\vhosts\domain.com\domains\domain.com\www\
!
Я почти схожу с ума, потому что это не имеет для меня никакого смысла.
Я даже могу установить значение open_basedir
равным none
и все равно получить ту же ошибку.
То же самое и для использования PHP 5.2 или 5.3.
Единственное, что меня немного dirname(__FILE__)
это установить dirname(__FILE__)
перед вызовом в index.php
в строке 18, но это не решение, поскольку я не могу изменить все ссылки на файлы во всей CMS. Из-за этого я также попытался добавить папку www
в путь include без везения.
AFAIK возникла проблема в Plesk с отключением open_basedir
в Windows. Попробуйте удалить ключ open_basedir
из реестра
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\PHP\Per Directory Values\C\Inetpub\vhosts\yourdomain.com\httpdocs
Что-то не так с вашей установкой php, проверьте php.ini для правильных значений в окнах: http://php.net/manual/en/install.windows.iis7.php#example-42
Если они верны, вам следует обратиться в службу поддержки Plesk
Для IIS я взломал голову, пока не добавил IUSR (или что бы пользовательский сервер не показывал при запуске echo get_current_user();
) на вкладке безопасности Windows\Temp
.
Дайте этому пользователю привилегии [ read
] / [ write
] в Windows\Temp
и он должен работать.