在服务器上我有some.php文件。我尝试使用file_get_content
和fread
阅读内容。这些都不能读我的内容。
如果我尝试像yahoo.com这样的其他网址,这些功能正在阅读内容。为什么会这样?
$my_conetn = file_get_contents("http://example.com");
echo $my_conetn;
以上代码段不起作用。
$handle = fopen($filename, "r");
$contents = fread($handle, 20);
echo $contents;
fclose($handle);
上述代码段也无效。
如何检查我的服务器?是否锁定了文件读取操作?
编辑:我不确定,但只是我的服务器文件无法读取。我可以阅读其他服务器链接。所以我联系我的托管服务提供商,然后我会回复你们/ gals。
答案 0 :(得分:7)
当使用文件函数访问远程文件(以http://和类似协议开头的路径)时,只有在启用了php.ini设置allow_url_fopen
时才能使用它。
此外,您对发送的请求没有任何影响。处理远程文件时建议使用CURL。
如果它是本地文件,请确保您有权访问该文件 - 您可以使用is_readable($filename)
检查该文件,并且如果设置了open_basedir
限制,则该文件位于ini_set('display_errors', 'on');
error_reporting(E_ALL);
限制内(通常是您的文档根目录)在共享托管环境中。)
此外,在调试问题时启用错误:
{{1}}