服务器上的一个目录未使用正确的包含路径(使用php.ini设置)

服务器上的一个目录未使用正确的包含路径(使用php.ini设置),php,apache,.htaccess,Php,Apache,.htaccess,我的站点上的某个特定目录有一些问题,它找不到根目录之外的包含php文件。让我感到困惑的是,这对这个目录之外的每一个页面都有效,但这个特定的目录不会自行设置。我在php.ini中设置include路径,如下所示: include_path = ".:/home1/(username)/inc:/usr/php/54/usr/lib64:/usr/php/54/usr/share/pear" 我试图访问的文件位于“inc”文件夹中 我运行的文件中只有include_once('include.ph

我的站点上的某个特定目录有一些问题,它找不到根目录之外的包含php文件。让我感到困惑的是,这对这个目录之外的每一个页面都有效,但这个特定的目录不会自行设置。我在php.ini中设置include路径,如下所示:

include_path = ".:/home1/(username)/inc:/usr/php/54/usr/lib64:/usr/php/54/usr/share/pear"
我试图访问的文件位于“inc”文件夹中

我运行的文件中只有
include_once('include.php')

它应该根据php.ini设置,在
inc
目录中找到正确的文件

# ALLOW USER BY IP
<Limit GET POST>
 order deny,allow
 deny from all
 allow from (ip of cron server)
</Limit>

# PREVENT VIEWING OF .HTACCESS
<Files .htaccess>
 order allow,deny
 deny from all
</Files>

#Set include path
php_value include_path ".:/home1/(username)/inc"
我尝试了几种不同的方法来解决这个问题,包括如下设置include路径:

include(dirname($\u SERVER['DOCUMENT\u ROOT']./inc/include.php');

也找不到正确的文件

以及更改该文件夹中的my.htaccess以手动设置该特定目录的包含路径

# ALLOW USER BY IP
<Limit GET POST>
 order deny,allow
 deny from all
 allow from (ip of cron server)
</Limit>

# PREVENT VIEWING OF .HTACCESS
<Files .htaccess>
 order allow,deny
 deny from all
</Files>

#Set include path
php_value include_path ".:/home1/(username)/inc"
#允许通过IP访问用户
命令拒绝,允许
全盘否定
允许来自(cron服务器的ip)
#阻止查看.HTACCESS
命令允许,拒绝
全盘否定
#设置包含路径
php_值包括路径“:/home1/(用户名)/inc”
我不确定我是否正确使用了.htaccess,但该方法在我的error.log文件中也产生了相同的错误

下面是error.log文件:

[05-Jul-2015 15:50:01] PHP Warning:  include_once(include.php) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /home1/(username)/public_html/audit/check_expired_email_keys.php on line 7
[05-Jul-2015 15:50:01] PHP Warning:  include_once() [<a href='function.include'>function.include</a>]: Failed opening 'include.php' for inclusion (include_path='.:/usr/lib64/php:/usr/share/pear') in /home1/(username)/public_html/audit/check_expired_email_keys.php on line 7
[05-Jul-2015 15:50:01] PHP Fatal error:  Call to a member function query() on a non-object in /home1/(username)/public_html/audit/check_expired_email_keys.php on line 9
[05-Jul-2015 15:50:01]PHP警告:include_once(include.PHP)[]:无法打开流:第7行的/home1/(username)/public_html/audit/check_expired_email_keys.PHP中没有此类文件或目录
[05-Jul-2015 15:50:01]PHP警告:include_once()[]:在/home1/(username)/public_html/audit/check_expired_email_keys.PHP第7行打开include.PHP(include_path=':/usr/lib64/PHP:/usr/share/pear')失败
[05-Jul-2015 15:50:01]PHP致命错误:在第9行的/home1/(username)/public\u html/audit/check\u expired\u email\u keys.PHP中对非对象调用成员函数query()
我现在不明白为什么这个目录不能像站点的其他部分那样运行

任何形式的建议在这里都会很有帮助

提前谢谢


::EDIT::通过将cronjobs直接移动到超级根include目录中解决了该问题。

错误日志提到了实际使用的
include\u路径,它与您的配置完全不同…可能是由不同的php实例执行的?(apache模块、php fpm、v53或v54…。运行
phpinfo()
在该目录中,它将显示PHP实际使用的配置文件。@Marki555将运行phpinfo()在该目录中查看,但这太奇怪了,我在主目录中配置了一个php.ini,因此不知道为什么它会从其他任何地方获取该信息。错误日志提到了实际使用的
include\u路径,它与您的配置完全不同……可能是由不同的php实例执行的?(apache模块、php fpm、v53或v54…)。在该目录中运行
phpinfo()
,它将显示php实际使用的配置文件。@Marki555将在该目录中运行phpinfo(),并检查它,但这太奇怪了,我在主目录中配置了一个php.ini,因此不知道为什么它会从其他任何地方获取该信息。
# ALLOW USER BY IP
<Limit GET POST>
 order deny,allow
 deny from all
 allow from (ip of cron server)
</Limit>

# PREVENT VIEWING OF .HTACCESS
<Files .htaccess>
 order allow,deny
 deny from all
</Files>

#Set include path
php_value include_path ".:/home1/(username)/inc"