PHP 包括不加载文件

PHP include not loading file

我在我的 ubuntu 16.04 OS 上本地运行 lamp 堆栈,我在包含文件时遇到问题。我的代码在 index.php:
<?php include('steamauth/steamauth.php'); ?> <?php include('steamauth/userinfo.php');?> 我的结构是:
index.php steamauth steamauth.php userinfo.php
我收到以下错误:
include(steamauth/userinfo.php): 无法打开流:/var/www/html/index.php
中没有这样的文件或目录 include(): 在 /var/www/html/index.php
中打开 'steamauth/userinfo.php' 以包含 (include_path='.:/usr/share/php') 失败 我尝试使用完整路径,在路径前添加 webroot,在 php.ini 中更改 include_path,但似乎没有任何效果。我该怎么办?

检查文件夹权限

检查 Apache 用户是否有权访问包含文件夹。

检查文件权限

检查您包含的文件的权限是否可以被 Apache 用户读取和执行。

检查 PHP 设置

这可能是由以下 PHP 设置之一引起的:

open_basedir: 如果设置 PHP 将无法访问指定目录之外的任何文件(甚至不能通过符号 link)。

安全模式: 如果打开此限制可能适用。

使路径成为绝对路径

使用以下方法检查 $_SERVER["DOCUMENT_ROOT"] 是否为您的域正确设置:

print $_SERVER["DOCUMENT_ROOT"]; // Add to top of you index.php file. 

然后将您的包含更改为:

$_SERVER["DOCUMENT_ROOT"] . '/sub_folder/file_to_include';

检查错别字和拼写错误

仔细检查您对文件夹的命名和您用来包含它的拼写是否相同。

顺便说一句:您可以在 index.php 文件中使用以下内容:

<?php
include('steamauth/steamauth.php');
include('steamauth/userinfo.php');

您也不需要在文件末尾添加结束符 ?> - 实际上最好不要这样做。