Вы будете смеяться, если прочтете до конца этого :) Теперь это сводит меня с ума - я не могу заставить php включить существующий файл с соответствующими правами доступа и т. Д.
У меня есть файл test.php и файл "lib / tools.php".
Я запускаю следующий код:
$fn = 'C:\Sasha\ThreeDiamonds\www\lib\tools.php';
if(file_exists($fn)){
echo "Trying to INCLUDE THE BLoody file: $fn";
if(require_once($fn)==false) echo("failed to include: ".$fn);
}
и получите следующее:
Попытка ВКЛЮЧИТЬ файл BLoody:
C: \ Саша \ ThreeDiamonds \ WWW \ Lib \ tools.php
Предупреждение:
require_once (C: \ Саша \ ThreeDiamonds \ WWW):
не удалось открыть поток: разрешение
отказано в
C: \ Sasha \ ThreeDiamonds \ www \ test.php на
строка 5 Фатальная ошибка: require_once ():
Не удалось открыть ''
(include_path = '.; C: \ php5 \ pear') в
C: \ Sasha \ ThreeDiamonds \ www \ test.php на
строка 5
Теперь это Windows / IIS и последняя версия php.
Следующее работает нормально, если я вызываю другой php-файл из той же директории tools.php со следующим кодом:
require('tools.php');
$mytools = new tools();
$mytools->ShowGallery();
Это сводит меня с ума :) IIS настроен на аутентификацию с идентификатором пула приложений - я вижу, что php-cgi.exe запущен под учетной записью локальной службы, и я убедился, что эффективные разрешения tools.php позволяют полный доступ этот аккаунт.
Я включил аудит безопасности для этого файла tools.php для неудачных попыток, и он не показывает никаких проблем.
Хорошо, я установил ProcMon, чтобы посмотреть, что здесь происходит. Все, что я получаю, это «FAST IO DISALLOWED» для операции «Query Open». Ммммм? Windows7 да.
Я потерялся, помогите пожалуйста:)