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

时间:2015-07-05 19:53:48

标签: php apache .htaccess

我的网站上有一个特定目录的问题,它无法找到我在根目录之外的包含的php文件。令我感到困惑的是,这适用于此目录之外的其他每个页面,但此特定目录不会自行设置。我在php.ini中设置了包含路径,如下所示:

include_path = ".:/home1/(username)/inc:/usr/php/54/usr/lib64:/usr/php/54/usr/share/pear"

我尝试访问的文件位于" inc"夹。

我正在运行的文件中的所有内容都是include_once ('include.php');

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

我尝试了几种不同的方法来解决这个问题,包括像这样设置包含路径:

include (dirname($_SERVER['DOCUMENT_ROOT'].'/inc/include.php');

也无法找到正确的文件。

除了更改位于该文件夹中的.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"

我不确定我是否正确使用了.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

我现在不知道为什么这个目录的行为不像网站的其他部分那样。

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

提前致谢

::编辑::问题通过将cronjobs直接移动到超级根目录包来解决。

0 个答案:

没有答案