PHP 8 в IIS и контексте выполненияPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHP 8 в IIS и контексте выполнения

Сообщение Anonymous »

У меня PHP работает на веб-сервере IIS.
Сервер получает доступ к некоторым файлам, хранящимся на другом файловом сервере, однако с ограничениями доступа к файлам на уровне пользователя и возвращает содержимое обратно клиенту через Интернет. интерфейс.
По причине устаревших причин до сих пор в системе использовался PHP 5.6.31.
Теперь я обновился до PHP 8.3.9, но столкнулся с проблемой: служба PHP больше не может получить доступ к возвращаемым файлам.
В PHP8 file_exists($filename) возвращает false, а в PHP5 точно такой же код возвращает true.Это имя файла имеет формат \\xxx.xxx.xxx.xxx\sharename\filename.ext, где xxx — это IP-адрес.
Переключение назад старый PHP восстанавливает доступ к файлу.
Я предполагаю, что я что-то не так сделал в файле php.ini, но не могу это понять. Я сравнил два ini-файла, но не нашел ничего особенного.
Я установил fastcgi.impersonate = 1.
Я контролирую версию PHP через менеджер PHP в диспетчере IIS.
Этот код:
$file = trim('//FILE01/DOC');
echo "
$file:" . (file_exists($file)?'Exists':'Does not exist');
$file = trim('\\\\FILE01\\DOC');
echo "
$file:" . (file_exists($file)?'Exists':'Does not exist');
$file = trim('\\\\10.249.70.8\\DOC');
echo "
$file:" . (file_exists($file)?'Exists':'Does not exist');
$file = trim('//10.249.70.8/DOC');
echo "
$file:" . (file_exists($file)?'Exists':'Does not exist');
$file = trim('C:\PHP');
echo "
$file:" . (file_exists($file)?'Exists':'Does not exist');
$file = trim('\\PHP');
echo "
$file:" . (file_exists($file)?'Exists':'Does not exist');

С PHP 5.6 я получаю такой результат:
//FILE01/DOC:Exists
\\FILE01\DOC:Exists
\\10.249.70.8\DOC:Exists
//10.249.70.8/DOC:Exists
C:\PHP:Exists
\PHP:Exists

PHP8.3 включен и никаких других изменений:
//FILE01/DOC:Does not exist
\\FILE01\DOC:Does not exist
\\10.249.70.8\DOC:Does not exist
//10.249.70.8/DOC:Does not exist
C:\PHP:Exists
\PHP:Exists


Подробнее здесь: https://stackoverflow.com/questions/787 ... on-context
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»