PHP fopen Permission Denied – Windows Server远程

我在Windows Server 2012中有一个PHP项目& Xampp 1.8.2.我试图从另一个带有IIS的Windows Server 2008中读取一些远程HTML内容:

$handle = fopen("\\\\SERVER001\\Webdocs\\page\\index.html", 'r');

……但我有这样的信息:

Warning: fopen(\SERVER001\Webdocs\page\index.html): failed to open stream: Permission denied in …

但是,如果我使用文件协议访问,工作正常:

file://///SERVER001/Webdocs/page/index.html

我已经在IIS的ipv4地址和域限制选项中添加了IP服务器,我得到了相同的结果.

我认为是Windows Server 2012(或apache)的问题,因为我在我的PC Windows 7中测试了同一个项目(localhost),xampp 1.8.2.我已经在ipv4地址和域名限制中添加了我的IP在2008 Server和fopen()工作没有问题和额外的配置.与服务器和我的PC的唯一区别是操作系统.

我有什么办法在这台服务器上获得许可?

权限:

解决方法:

我发现了问题:

apache service in netstat running like a local user

我的PC和Windows Server之间的区别是我的Xampp的Control没有安装apache服务.安装它时,Apache服务像本地用户一样运行(而不像活动目录域中的用户).

因此有必要将域用户设置为:

Services > Apache > Properties > Log On tab > This account

重启Apache并正常工作!

上一篇:PHP文件上传不断抛出错误


下一篇:php花式读取文件