为什么我从我的网站的一个目录而不是另一个目录中得到include()和require()错误?

时间:2011-04-23 03:18:05

标签: php wordpress include

这里有新手,所以请按照你的意愿......

我现在正在进行网站升级,一切正常,除了......

我在一个子目录中安装了WordPress,现在我已经把主网站带了,我正在

include(/settings.php) [function.include]: failed to open stream: No such file or directory

include() [function.include]: Failed opening '/settings.php' for inclusion (include_path='.:')

on包含在子目录中。我已经设置了不同的include_path设置,我知道文件是存在的(它们被包含在根目录中没有问题),并且在推出期间我没有更改任何权限或任何内容。站点。

如果这个问题不合适,或放错地方,或者过于含糊,或者你有什么问题,请让我知道 - 经过数月的谷歌搜索和潜伏后首先发帖。

提前感谢!

3 个答案:

答案 0 :(得分:0)

“/ settings.php”指向服务器的根目录。它应该是“settings.php”,如果它在同一条路径上,它应该在引号中。

干杯

答案 1 :(得分:0)

我建议将define('WP_DEBUG', true);添加到您的wp-config.php文件中,并向后报告更多信息。确保撤消此任何您获取调试信息,因为在实际站点上这样做可能存在安全风险。我只搜索我的整个WP目录include( "/settings.php" );并找不到任何东西,这让我认为这是插件,主题或其他自定义代码的问题。您可以通过禁用所有插件,查看网站是否再次运行,然后单独精心启用插件直到找到罪魁祸首来解决此问题。

您获得的错误消息是否指向特定文件和行号?这可以帮助调试问题。

答案 2 :(得分:0)

您可能在chrooted环境中使用php,因此服务器的根路径与脚本的根路径不匹配。

关于变量范围问题,您可以发布一些示例代码吗?