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代码

    自定义一个函数 ,把一个数组变成用,(逗号)连接起来的字符串 (注意:应考虑到多维数组的情况,并以返回值的形式返回)
    2010-08-08
  • 实例讲解通过​PHP创建数据库

    实例讲解通过​PHP创建数据库

    在本篇文章里小编给大家分享了关于如何通过​PHP创建数据库的知识点内容,有需要的朋友们学习下。
    2019-01-01
  • php闭包中使用use声明变量的作用域实例分析

    php闭包中使用use声明变量的作用域实例分析

    这篇文章主要介绍了php闭包中使用use声明变量的作用域,结合实例形式分析了闭包中use声明变量作用域的相关原理与分析,需要的朋友可以参考下
    2018-08-08
  • PHP中的output_buffering详细介绍

    PHP中的output_buffering详细介绍

    这篇文章主要介绍了PHP中的output_buffering详细介绍,本文讲解了output buffering的一些高级用法,需要的朋友可以参考下
    2014-09-09
  • ThinkPHP控制器详解

    ThinkPHP控制器详解

    一般来说,ThinkPHP的控制器是一个类,而操作则是控制器类的一个公共方法。下面我们就来详细谈谈ThinkPHP的控制器
    2015-07-07
  • php 使用post,get的一种简洁方式

    php 使用post,get的一种简洁方式

    使用$_POST,和$_GET获取客户发来的信息时,一般是使用数组加小标的方式。
    2010-04-04
  • php运用memcache的完整实例

    php运用memcache的完整实例

    这篇文章主要给大家介绍了关于php运用memcache的完整实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • PHP项目在Docker(WSL2)中运行缓慢的解决方法

    PHP项目在Docker(WSL2)中运行缓慢的解决方法

    最近在使用Docker容器运行PHP项目的时候,发现特别缓慢,例如一个干净的 ThinkPHP 5.1 框架,访问首页都需要1秒以上,如果再加上数据库查询、复杂的业务逻辑等代码的话,那速度可想而知,所以本文就给大家介绍了解决方法,需要的朋友可以参考下
    2023-09-09
  • 关于php支持分块与断点续传文件下载功能代码

    关于php支持分块与断点续传文件下载功能代码

    一篇关于php流下载,就是可以支持分块与断点续传文件下载,有需要的朋友可以看看
    2014-05-05
  • PHP使用mkdir创建多级目录的方法

    PHP使用mkdir创建多级目录的方法

    这篇文章主要介绍了PHP使用mkdir创建多级目录的方法,结合实例详细分析了PHP中mkdir函数的使用技巧,需要的朋友可以参考下
    2015-12-12

最新评论