《PHP学习:php以fastCGI的方式运行时文件系统权限问题及解决方法》要点:
本文介绍了PHP学习:php以fastCGI的方式运行时文件系统权限问题及解决方法,希望对您有用。如果有疑问,可以联系我们。
本日准备将一个php demo放在IIS下运行,网站在IIS下的配置是这样的:PHP学习
应用程序池是集成模式下的.net framework 2.0(2.0或4.0没什么关系,因为php以fastCGI的方式在跑), 应用程序池标识配置为IIS内置的NETWORKSERVICE, 使用的认证方式为匿名身份验证.PHP学习
打开本地的网站,拜访php页面, 出现了500错误.PHP学习
PHP学习
好吧,是权限问题,最简单的解决方法是把C:\Users\Administrator\PhpstormProjects\phpDemo的权限设成Everyone, 并允许完全控制:PHP学习
PHP学习
重新拜访php页面,成功了:PHP学习
PHP学习
上面的方法是够简单,但也太不平安了,平时本地搭个demo这样做没问题,真正上线的时候,这样做迟早出问题的.PHP学习
于是重新设置,把该目录下的只读权限赋给NETWRORKSERVICE帐号再试一下PHP学习
PHP学习
不过问题还是没有解决,拜访的时候,出现了401错误PHP学习
PHP学习
错误信息中包括显示登录用户为匿名,检查了网站下的身份验证(再点击 匿名身份验证->编辑),原来网站默认情况下,在登录办法为匿名时,使用的默认登录用户为IUSR(就是我们看到的匿名登录用户了)PHP学习
PHP学习
那么解决方法就是:PHP学习
1. 将IUSR设置为C:\Users\Administrator\PhpstormProjects\phpDemo的读权限,类似之前对NETWORKSERVICE的设置.PHP学习
2. 或选择使用应用程序池标识即可.PHP学习
经试验,办法1与2都成功.PHP学习
PHP学习
Note:NETWORKSERVICE在IIS7中隶属于iis_iusers用户组,之前对NETWORKSERVICE的设置也可以改为对iis_iusers的设置,同样也可以解决问题,只是权限被进一步放宽了罢了.PHP学习
以上所述便是本文的全部内容了,希望大家能够喜欢.PHP学习
《PHP学习:php以fastCGI的方式运行时文件系统权限问题及解决方法》是否对您有启发,欢迎查看更多与《PHP学习:php以fastCGI的方式运行时文件系统权限问题及解决方法》相关教程,学精学透。维易PHP学院为您提供精彩教程。