require_once在实时服务器上不起作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了require_once在实时服务器上不起作用相关的知识,希望对你有一定的参考价值。

我有一种情况,即使我具有相同的文件和文件夹结构,php行在localhost上也可以正常工作,但在实时服务器上却无法正常工作。

require_once '/../Renderer.php';

我在实时服务器上遇到的错误是:

警告:require_once(/../ Renderer.php):无法打开流:否此类文件或目录/home2/attafsir/public_html/balaghatoalquran/production/wp-content/themes/twentyten/Text/Diff/Renderer/unified.php在第19行

致命错误:require_once():要求打开失败'/../Renderer.php'(include_path ='。:/ usr / php / 54 / usr / lib64:/ usr / php / 54 / usr / share / pear')在/home2/attafsir/public_html/balaghatoalquran/production/wp-content/themes/twentyten/Text/Diff/Renderer/unified.php在第19行

我花了很多时间试图弄清楚这种行为背后的原因是什么,但无济于事,感谢您的帮助。

PS:我已经在主机上验证了是否在php.ini中安装并配置了PEAR,他们向我确认了。 (因为代码使用的是PEAR包)

解决方案:解决方案是可接受的答案,但是我想指出,尽管实时服务器上的问题已解决,但在localhost上无法正常工作。这是一个临时解决方案,因为最好的办法是在本地服务器和实时服务器上具有相同的代码。找到它后,我将回去发布完整的解决方案。总是欢迎您的建议。

答案

/是文件系统的根,然后尝试将..提升到一个级别。那不存在,所以您会得到一个错误。

确定要不要相对路径吗?

如果您希望它相对于Web服务器的根目录(除非有非常严重的问题,否则它不是文件系统的根目录),请使用类似以下内容:

$_SERVER['DOCUMENT_ROOT'] . '/../Renderer.php'
另一答案

尝试一下:

require_once '../Renderer.php';
另一答案

您不能使用'/../Renderer.php'。它是“ ../”表示一个文件夹或“ /”表示根目录。

另一答案

删除第一个斜杠并尝试以下任何一个:

require_once '../Renderer.php';

require_once '../../Renderer.php';

哪个作品取决于您的文件结构。

另一答案

我也遇到相同的问题enter image description here将当前版本的PHP更改为PHP 5.3

以上是关于require_once在实时服务器上不起作用的主要内容,如果未能解决你的问题,请参考以下文章

VueJs 路由器链接在实时服务器上不起作用

在 WCF 中启用了 Cors,但在实时服务器上不起作用

FileUpload.PostedFile.SaveAs() 在实时网站 asp.net 上不起作用

上传文件(图像)在实时服务器上不起作用,但在dev上工作

克莱因 url 路由器在 XAMPP 上不起作用

标头位置重定向在 Web 服务器上不起作用