У меня проблема с простым chdir и требуется.PHP - chdir и требуется сбой
С первого файла: веб/index_cluster.php
Я пытаюсь загрузить второй один: ezpublish_legacy/index_cluster.php
Мой нужный файл не загружать, но я не имею ни малейшего понятия, почему ...
Вот моя конфигурация.
- PHP 5.4.16
- Обновление с Ez Опубликовать 4.7 Ez Pubslih 5.90.0alpa1 (на основе SF2)
- Red Hat Enterprise Linux Server высвобождать 6.4 (Santiago)
Eсть ничего на журнал ezpublish и допустимый размер памяти в апача
PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 240 bytes) in /path/to/my/www/web/index_cluster.php on line 11
Вот моя (упрощенный) дерево
www
`-- ezpublish_legacy
|-- index_cluster.php
`-- web
|-- index_cluster.php
Вот оригинальный код
$legacyRoot = '/path/to/my/www/ezpublish_legacy';
chdir($legacyRoot);
require 'index_cluster.php';
И вот мое исправление
$legacyRoot = '/path/to/my/www/ezpublish_legacy';
chdir($legacyRoot);
require '/path/to/my/www/ezpublish_legacy/index_cluster.php';
Я пробовал все, что я мог думать:
$legacyRoot = '/path/to/my/www/ezpublish_legacy';
require $legacyRoot.'/index_cluster.php';
=>Работа
$legacyRoot = '/path/to/my/www/ezpublish_legacy';
echo getcwd() . "\n";
chdir($legacyRoot);
echo getcwd() . "\n";
die()
require 'index_cluster.php';
=>именно то, что я ожидал
/path/to/my/www/web
/path/to/my/www/ezpublish_legacy
Загрузка с абсолютным путем и проверки текущего каталога на загруженном файле дает ожидаемый результат
веб/index_cluster.php
require '/path/to/my/www/ezpublish_legacy/index_cluster.php';
ezpublish_legacy/index_cluster.PHP
echo getcwd() . "\n";
die();
результат в (о чем я ожидал)
/path/to/my/www/web
веб/index_cluster.php
$legacyRoot = '/path/to/my/www/ezpublish_legacy';
chdir($legacyRoot);
require '/path/to/my/www/ezpublish_legacy/index_cluster.php';
ezpublish_legacy/index_cluster.php
echo getcwd() . "\n";
die();
результат в (то, что я ожидал)
/path/to/my/www/ezpublish_legacy
Обновление: Я пытался что-то новое:
require "/index_cluster.php" => instant fail
PHP Предупреждение: требуется (/ index_cluster .php): не удалось открыть поток: нет такого файла или каталога в /path/to/my/www/web/index_cluster.php в строке 11
require "index_cluster.php" => trying loading for 10 seconds then fail
PHP Фатальная ошибка: Разрешены памяти размером 536870912 байт исчерпаны (пытались выделить 240 байт) в /path/to/my/www/web/index_cluster.php на линии 11
Ваш сообщение об ошибке - ограничение памяти PHP. Речь идет не о chdir & require. – Taras
true, я забыл об ошибке apache при первом написании, потому что это не «релевантно» для меня ... Потом добавлено. Тем не менее проблема по-прежнему вызвана компилятором chdir/require – Adcaelo
* не имеет значения, потому что я заставил лимит памяти php на 2G и более и то же самое! PHP Неустранимая ошибка: допустимый размер памяти 2147483648 байт исчерпан (пытался выделить 130968 байт) – Adcaelo