требовать один раз не работать на живом сервере
У меня есть ситуация, когда строка php работает нормально на localhost, но не на реальном сервере, даже если у меня есть та же структура файлов и папок.
require_once '/../Renderer.php';
Ошибка, которую я получаю на реальном сервере:
Я потратил много времени, пытаясь выяснить, какие могут быть причины такого поведения, но безрезультатно, ваша помощь ценится.Предупреждение: require_once(/../Визуализация.php): не удалось открыть поток: нет такой файл или каталог в /home2/attafsir/public_html/balaghatoalquran/production/wp-content/themes/twentyten/Text/Diff/Renderer/unified.РНР в строке 19
Фатальная ошибка: require_once(): Не открывать - /../Визуализация.на PHP' (в include_path='.: / usr / php / 54 / usr / lib64:/usr/php/54/usr/share / pear') в /home2/attafsir/public_html/balaghatoalquran/production/wp-content/themes/twentyten/Text/Diff/Renderer/unified.РНР в строке 19
PS: Я проверил с моим хостом, установлена ли PEAR и настроена ли она на php.ини, и они подтверждают это мне. (поскольку код использует пакет PEAR)
Решение: Решение-это принятый ответ, но я хочу заметить, что проблема на живом сервере решена, но нарушена функция на localhost. Это временное решение, так как лучше всего иметь один и тот же код на локальном и реальном сервере. Я вернусь, чтобы опубликовать полное решение, когда найду его. ваше предложение всегда приветствуется.
4 ответа:
Вы уверены, что вам не нужен относительный путь?
/
является корнем файловой системы, а затем вы пытаетесь подняться на один уровень с..
. Этого не существует, поэтому вы получаете ошибку.Если вы хотите, чтобы он был относительно корня веб-сервера (который не является корнем файловой системы, если нет чего-то очень неправильного), используйте что-то вроде:
$_SERVER['DOCUMENT_ROOT'] . '/../Renderer.php'