php以fastCGI的方式运行时文件系统权限问题及解决方法

 更新时间:2015年05月11日 09:57:57   投稿:hebedich  
在IIS7.0上以FastCGI方式配置好PHP运行环境,测试可以正常运行PHP程序后,将PHP程序部署上去,导入程序原来的数据和配置信息。很快就有问题出来啦下面我们就详细记录下。

今天准备将一个php demo放在IIS下运行,网站在IIS下的配置是这样的:

应用程序池是集成模式下的.net framework 2.0(2.0或4.0没什么关系,因为php以fastCGI的方式在跑), 应用程序池标识配置为IIS内置的NETWORKSERVICE, 使用的认证方式为匿名身份验证。

打开本地的网站,访问php页面, 出现了500错误。

好吧,是权限问题,最简单的解决办法是把C:\Users\Administrator\PhpstormProjects\phpDemo的权限设成Everyone, 并允许完全控制:

重新访问php页面,成功了:

上面的方法是够简单,但也太不安全了,平时本地搭个demo这样做没问题,真正上线的时候,这样做迟早出问题的。

于是重新设置,把该目录下的只读权限赋给NETWRORKSERVICE帐号再试一下

不过问题还是没有解决,访问的时候,出现了401错误

错误信息中包括显示登录用户为匿名,检查了网站下的身份验证(再点击 匿名身份验证->编辑),原来网站默认情况下,在登录方法为匿名时,使用的默认登录用户为IUSR(就是我们看到的匿名登录用户了)

那么解决办法就是:

1. 将IUSR设置为C:\Users\Administrator\PhpstormProjects\phpDemo的读权限,类似之前对NETWORKSERVICE的设置。

2. 或选择使用应用程序池标识即可。

经试验,方法1与2都成功。

Note:NETWORKSERVICE在IIS7中隶属于iis_iusers用户组,之前对NETWORKSERVICE的设置也可以改为对iis_iusers的设置,同样也可以解决问题,只是权限被进一步放宽了而已。

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • PHP实现的数独求解问题示例

    PHP实现的数独求解问题示例

    这篇文章主要介绍了PHP实现的数独求解问题,涉及php数组与字符串的遍历、比较、判断、运算等相关操作技巧,需要的朋友可以参考下
    2017-04-04
  • 推荐十款免费 WordPress 插件

    推荐十款免费 WordPress 插件

    本文给大家介绍的是今年必备的10款WordPress插件,非常的实用,包含WordPress SEO By Yoast,Akismet,W3 Total Cache,Disqus Comment System,Google Sitemap Generator,Jetpack,Limit Login Attempts,Contact Form 7,Yet Another Related Posts Plugin等
    2015-03-03
  • php生成随机数的三种方法

    php生成随机数的三种方法

    分享下php生成随机数的三种方法,生成1-10之间的不重复随机数,php生成不重复随机数的例子,需要的朋友参考下
    2014-09-09
  • apache和PHP如何整合在一起

    apache和PHP如何整合在一起

    这篇文章主要告诉大家如何将apache和PHP整合在一起,需要的朋友可以参考下
    2015-10-10
  • PHP中返回引用类型的方法

    PHP中返回引用类型的方法

    这篇文章主要介绍了PHP中返回引用类型的方法,这是个比较容易混淆的概念,如果不是出于某些特殊的原因,建议还是不要使用,需要的朋友可以参考下
    2015-04-04
  • PHP中执行MYSQL事务解决数据写入不完整等情况

    PHP中执行MYSQL事务解决数据写入不完整等情况

    事务可以进行模拟SQL操作,当所有的SQL都操作成功的时候才进行SQL操作,只要有一个操作失败就回滚当前事务的所有SQL操作,避免出现上面描述中出现的数据写入不完整等情况
    2014-01-01
  • php将字符串全部转换成大写或者小写的方法

    php将字符串全部转换成大写或者小写的方法

    这篇文章主要介绍了php将字符串全部转换成大写或者小写的方法,涉及php中strtolower与strtoupper等函数的使用技巧,需要的朋友可以参考下
    2015-03-03
  • 如何使用php判断服务器是否是HTTPS连接

    如何使用php判断服务器是否是HTTPS连接

    需要判断代码运行环境是否是HTTPS服务器?下面的代码可以帮助你实现,非常简单
    2013-07-07
  • 详解各种PHP函数漏洞

    详解各种PHP函数漏洞

    这篇文章主要介绍了详解各种PHP函数漏洞,对漏洞感兴趣的同学,可以参考下
    2021-04-04
  • 关于PHP二进制流 逐bit的低位在前算法(详解)

    关于PHP二进制流 逐bit的低位在前算法(详解)

    本篇文章是对PHP二进制流逐bit的低位在前算法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06

最新评论