前段时间在windows server 2008 r2 (x64)服务器上配置好IIS 7.5+PHP(FASTCGI)+MYSQL以后,运行一直还算正常。直到昨天因为在线备份mysql失败而焦头烂额。
php显示执行成功,但是显示执行时间是一个天文数字——这样的情况在以前配置nginx或者apache的php环境下也遇见过,原因无非是php内存限制过小,或者超时时间设置过小所致。然而修改fastcgi执行时间,加大php内存以后,问题依旧。
然后考虑到执行权限的问题,于是把默认的4个账户(创立目录、系统、administrator、users)安全全部设置为可读可写不可执行——结果还是不行。
在几乎快要抓狂的时候,突然想起iis7.5的运行账户并不在传统的用户列表里,而是在IIS_Iusrs组下的一群无密码账户。
于是赋予了相关读写目录iis_iusrs的读写权限,ok,文件执行读取正常了。
在iis7.5中IIS_IUSRS内建组替代了IIS_WPG组,这也是一个比较值得注意的地方吧。
另外需要说明的是如果不是需要操作的对象,例如.html、.php等等一类非对象文件或者目录,是不需要设置目录权限的——或者可以设置system的读写权限来实现
例
以2008 R2系统 IIS7.5 运行脚本为ASP/PHP/.net1.1-4.0 全能型空间环境为例,给你简单讲解一下站点目录权限设置。
例:1、站点用户组——TSHost
2、站点域名 ——tingsea.com.cn
3、站点用户 ——tingsea
4、www根目录为 e:/WwwRoot
5、站点ftp根目录为 e:/wwwroot/tingsea
6、站点web目录为 e:/wwwroot/tingsea/web
7、站点日志目录为 e:wwwroot/tingsea/log
8、站点独立数据目录为 e:/wwwroot/tingsea/db
目录权限说明(为说明简便,这里继承性权限和非特殊权限就不详细列了,只列出相对于父级权限增加和特殊的)
e:/ —— administrators ,SYSTEM 完全控制
e:/wwwroot —— IIS_IUSRS 读取
本文来自www.111cn.net
e:/wwwroot/tingsea —— tingsea 读取
e:/wwwroot/tingsea/web —— tingsea <不是继承的> 此文件夹、子文件夹和文件