Мы воспроизвели ошибку, которая возникает на одном из наших производственных серверов.Вот как это происходит:
У нас есть 3 PHP-файла
test1.php:
Test 1
<?php require_once('test2.php'); ?>
test2.php:
Test 2
<?php require_once('test3.php'); ?>
test3.php
Test 3
include_path одинаково на обоих серверах, и точка не включена в негопо другим причинам:
php_value include_path /var/www/xxxxxx/php/ZendFramework/1.11.x/:/var/www/xxxxxx/php/
На нашем сервере dev все в порядке(выводит Тест 1, Тест 2, Тест 3), в режиме онлайн, когда мы загружаем файлы, при первой загрузке файла /test1.php все в порядке, при втором вызове и т. д. получаем:1 Test 2
Предупреждение: require_once (test3.php) [function.require-Once]: не удалось открыть поток: в строке нет такого файла или каталога 2
Неустранимая ошибка: require_once () [function.require]: не удалось открыть требуемый файл test3.php (include_path = '/ var / www / xxxxxx / php / ZendFramework / 1.11.x /: / var / www / xxxxxx / php /') в строке 2
Есть ли другие вещи, которые мы должны знать?Что насчет того, что влияет на поведение включаемых файлов в PHP, кроме include_path?Мне нужно было различить, что может произойти, поскольку у меня нет доступа к файлам конфигурации серверов на данный момент.И почему он работает в самый первый раз на рабочем сервере и выходит из строя после?Я просто не могу объяснить, что это может быть.
Редактировать: Иногда в сообщении об ошибке иногда появляются странные символы (и изменения при каждом обновлении):
[...] Нет такого файла или каталога в ° µ4ª в строке 4