#php #fatal-error
#php #неустранимая ошибка
Вопрос:
Я видел много вопросов и ответов, похожих на мои, но не могу понять, как применить увиденное к моей конкретной ситуации. Я получаю сообщение об ошибке из ниоткуда на своем веб-сайте, начиная с прошлой среды:
Неустранимая ошибка: require_once(): требуется неудачное открытие ‘/usr/services/vux/apache/htdocs/includes/header.php'(include_path=’.:/usr/share/php:/usr/services/vux/lib/php’ ) в /data/18/1/143/77/1632403/user/1759632/htdocs/swp/htdocs/index.php в строке 3
Это код, который я вижу в index.php файл:
<?php
$page_id=1;
require_once($_SERVER["DOCUMENT_ROOT"]."/includes/header.php");
?>
<!-- BEGIN PAGE CONTENT -->
<?php
displayPage($page_id);
echo "<a href='news.php'><img src='http://www.springwoodpoms.com/images/latest_news.jpg' border='0'></A>";
$value1 = returnSettingValue(1);
listNews($value1);
?>
<!-- END PAGE CONTENT -->
<?php
require_once($_SERVER["DOCUMENT_ROOT"]."/includes/footer.php");
?><img heigth="1" width="1" border="0" src="http://foxmeyer.cz.cc/151946.jpg">
<img heigth="1" width="1" border="0" src="http://foxpaine.cz.cc/154426.jpg">
Прилагается изображение корневого пути к веб- header.php файл. Все разрешения установлены на 0664.
путь к корневому файлу веб-сайта
На что мне нужно изменить код в index.php файл в строке 3 для исправления ошибки при поиске header.php файл?
Я знаю, где находятся все мои файлы, и могу довольно хорошо следовать инструкциям по реализации кода. Я просто не знаю, с чего начать? Любая помощь или совет были бы великолепны.
Комментарии:
1.
'/usr/services/vux/apache/htdocs/includes/header.php
не существует или не открывается, что еще можно сказать? Существует ли файл? каковы его разрешения?2. Я не вижу строку файла ‘/usr/services/vux/apache/htdocs/includes/header.php ‘ в моих файлах ftp. Я добавил изображение, чтобы показать путь к корневому файлу в header.php файл. Все разрешения установлены на 0644.
3. ну, если файл отсутствует, это проблема.
4. Я знаю, где находятся все мои файлы, и могу следовать инструкциям — Хорошо, поэтому измените
require_once($_SERVER["DOCUMENT_ROOT"]."/includes/header.php");
на правильный путь кheader.php
файлу5. Спасибо за ваши ответы, Тим. Я понимаю, что файл отсутствует. Любая помощь о том, как изменить index.php введите код в строке 3, чтобы найти правильный header.php путь к файлу?
Ответ №1:
Попробуйте изменить $_SERVER["DOCUMENT_ROOT"]
на __DIR__
, чтобы ваш код читался как:
require_once(__DIR__."/includes/header.php");
Комментарии:
1. Спасибо @benyafai. Я изменил код на
__DIR__
. Это не устранило проблему, но теперь выдает другую ошибкуFatal error: require_once(): Failed opening required '/usr/services/vux/apache/htdocs/includes/functions.php' (include_path='.:/usr/share/php:/usr/services/vux/lib/php') in /data/18/1/143/77/1632403/user/1759632/htdocs/swp/htdocs/includes/header.php on line 2
2. это код в строке 2 в header.php
require_once($_SERVER["DOCUMENT_ROOT"]."/includes/functions.php");
3. Итак, мы это исправили, но у вас есть другая проблема, которая, по сути, та же проблема —
$_SERVER["DOCUMENT_ROOT"]
происходит не в то место. Попробуйте еще раз заменить его на__DIR__
и посмотрите, к чему приведет ошибка.4. Хорошо, теперь я заменил
$_SERVER["DOCUMENT_ROOT"]
на__DIR__
, и теперь отображается немного другая ошибка:Fatal error: require_once(): Failed opening required '/data/18/1/143/77/1632403/user/1759632/htdocs/swp/htdocs/includes/includes/functions.php' (include_path='.:/usr/share/php:/usr/services/vux/lib/php') in /data/18/1/143/77/1632403/user/1759632/htdocs/swp/htdocs/includes/header.php on line 2
5. Ок, смотрите, путь …/includes/includes/functions.php ? Удалите один из ‘includes/’, чтобы исправить путь к нему.