在 PHP 中读取没有读取权限的文件
在php中,我需要读取一个没有读取权限的文件(文件权限为-rw-r-----
)。 无法更改文件的权限。该文件位于本地服务器上。
我在 PHP 中尝试过的各种方法都不起作用(file_get_contents、fopen 和curl),如果未设置最后读取位,这也许是可以预料的。是因为网络服务器被阻止访问吗?
如果是这样的话,为什么 Firefox 可以像从 shell 中的curl 一样直接读取文件(使用 file://)?即将编写一个可以读取该文件的外部 python 脚本...我在这里缺少什么?
In php, I need to read a file that has no read access (the file permissions are -rw-r-----
).
Changing the file's permissions isn't possible. The file sits on a local server.
Various methods I've tried in PHP don't work (file_get_contents, fopen, and curl) and maybe that's to be expected if that last read bit isn't set. Is that because the web server is being blocked access?
If that's the case then why is it that Firefox can read the file directly (using file://) as does curl from a shell? About to write an external python script that can read the file... what am I missing here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这取决于哪个用户拥有该文件,以及 PHP/Apache 运行时的用户身份。您可以通过从 PHP 运行
whoami
来检查它。如果您无法更改文件的权限/所有者的任何部分,也无法更改 Apache 用户,那么,您就很抱歉了。It depends what user owns the file, and what user PHP/Apache is running as. You could check it by running
whoami
from PHP. If you can't change any part of the permissions/owner on the file, nor the Apache user, then, well, you're stuffed sorry.