我试图读取我可以访问但 php 无法访问的共享网络文件夹中的文件。共享文件夹“xtern”位于计算机“saturn”上,文件名为“seq_ws.csv”。这是我的代码:<?php $fileURL = "\\saturn\xtern\seq_ws.csv";$fileAvailable = file_exists($fileURL);if($fileAvailable){ echo "Succes";}else{ echo "fail"; echo file_get_contents($fileURL);}?>结果如下;failWarning: file_get_contents(\saturn\xtern\seq_ws.csv): failed to open stream: No such file or directory in C:\Apache24\htdocs\file.php on line 9奇怪的是,我可以在浏览器和 Windows 资源管理器中打开路径并读取文件。共享文件夹拥有我运行 Apache 的用户的所有权限以及“所有人”的所有权限。我曾尝试研究此问题,但未能找到任何解决方案。我已经检查php.ini并allow_url_fopen设置为On. 我很确定它是 Apache、PHP 或某处共享文件夹中的设置,因为我可以按照前面所述读取文件,但不能使用我的 PHP 脚本。如果有人有任何信息或建议,我们将不胜感激,
1 回答
哆啦的时光机
TA贡献1779条经验 获得超6个赞
经过对这个问题的更多搜索后,我终于找到了答案,UNC 路径的问题是 Apache 服务无法默认进入共享文件夹(可能是一个错误),这是服务设置方式的原因。要解决此问题,您必须将 Apache 链接到用户配置文件,我不知道这是否只是 Windows 中的一个问题。
要修复 Apache 无法访问共享文件夹的问题:
在 Windows 中转到本地服务
services.msc右键单击 Apache 服务并选择属性。
单击“登录”选项卡
将“登录为:”设置从更改为
Local System account并This account填写帐户名和密码
如果您不想使用Localhost与连接到共享文件夹相同的帐户,只需将名称和密码复制到文本框中即可。
我希望这会帮助其他遇到与我相同问题的人。在研究这个时,我发现很多人都这样做了,而且有很多不同的评论/答案,但没有任何效果。
- 1 回答
- 0 关注
- 149 浏览
添加回答
举报
0/150
提交
取消
