您现在的位置是:帮助中心 > 服务器 > iis运行php的权限设置

iis运行php的权限设置

时间:2015-12-21 15:00 来源:武林数据 阅读次数: 复制分享 我要评论

云主机
 
iis运行php的权限设置
在配置IIS的时候,如果安全稍微做的好一些。就会出现各式各样的问题。比如,常见的访问网页会弹出用户名密码的登陆界面,或者是访问某种页面比如html,asp没事情,但是访问jsp或者php就有问题,显示401.3 ACL 禁止访问资源等
  通常的解决办法是。   
  
     第一,看iis中(不管iis5 还是iis6)  ,网站或者目录,包括虚拟目录的属性,看目录安全性选项卡中的 编辑匿名访问和身份验证控制,看看是用的哪个帐号,如果是用的iis匿名帐号(一般是IUSR_机器名),或者由系统管理员设置了其他帐号,这个帐号很重要,下面成IIS匿名帐号 察看帐号的密码是否是正确的系统设置的密码,实在不行就在计算机管理里面的用户管理,重新把帐号设置一个密码,然后在编辑匿名访问和身份验证控制选项中把密码重新设置一下。
     第二。在资源管理器里面看放置网站或者目录的安全选项。是否IIS匿名帐号有权限访问,一般来说,NT系统中的IUSR_机器名这个帐号都会是在user组里面,有时候禁用了user组,也会引起这个问题,让刚才设置的IIS匿名帐号或者帐号所在的系统组有对目录的访问权限,至少要有读权限。
     第三,在你放置的程序中,看是否含有其他类型的动态语言写的程序,IIS会默认对asp进行解释,对于ASPX来说,要看net执行文件目录是否让IIS匿名帐号有读权限? cgi程序就是perl目录,jsp看是用resin还是用tomcat做的解释,php就是php目录,要保证这些目录都让IIS匿名帐号有读权限才行。

http://hi.baidu.com/davidw3000/blog/item/20bec6c2044988160ef477eb.html

一、环境需求和准备工作: 
笔者选择了PHP5.2版本,而IIS则是XP系统自带的IIS5。首先我们要安装IIS组件,默认情况下在XP系统是没有安装的。
第一步:通过控制面板的添加/删除Windows组件完成IIS组件的安装工作。 
第二步:在添加/删除Windows组件选项窗口中我们双击Internet信息服务(IIS),然后把里面的包括internet信息服务管理单元,公用文件,万维网服务选中。
第三步:插入XP SP2系统光盘复制必须文件到本地硬盘,安装完毕后我们可以从“管理工具”中的“internet信息服务”启动IIS程序。
二、安装PHP程序及设置: 
安装好IIS后我们就可以发布相应的网站了,但是这时还无法浏览PHP语言建立的页面,我们需要先安装PHP并设置必须的参数。
第一步:下载PHP主程序,笔者使用的是PHP 5.2,解压缩到本地磁盘c盘根目录。
附:PHP5.2.3下载地址 http://www.php.net/downloads.php#v5
第二步:接下来将PHP文件夹中的php.ini-dist复制到C:\WINDOWS目录下并改名为php.ini,复制php5ts.dll和libmysql.dll两个文件到 
C:\WINDOWS\system32中。
第三步:为了让PHP支持MYSQL和GD库需要编辑php.ini文件,用记事本打开该文件,查找“extension_dir”,然后把extension_dir = "./"修改为extension_dir = "C:\php\ext";另外还需要把“;extension=php_mysql.dll”前的分号去掉,改成extension=php_mysql.dll。把“;extension=php_gd2.dll”前的分号也去掉,修改为extension=php_gd2.dll。 
至此我们的PHP就安装完成了,但是由于默认情况下IIS是不支持PHP的,只能支持ASP。所以还需要我们像建立CGI那样创建PHP的映射关系。 
三、配置IIS的PHP映射: 
一般情况下设置某语言或执行程序的映射关系都是通过ISAPI筛选器解决的,PHP也不例外。 
第一步:打开IIS,在默认网站上点右键选择“属性”。
第二步:找到“主目录”标签,点右下角的“配置”按钮。
第三步:在“添加和编辑应用程序扩展名映射”窗口中,通过浏览按钮找到c:\php\php5isapi.dll文件,扩展名输入.php,这样在解析过程中将自动调用php5isapi.dll解释PHP语言。另外还需要把“脚本引擎”和“检查文件是否存在”选中。
第四步:返回到默认网站属性窗口的“主目录”标签,将执行权限修改为“脚本和可执行文件”,这样才能够执行PHP程序。
第五步:来到默认网站属性窗口的“文档”标签,将index.php添加到默认文档列表中。
第六步:新建立一个TXT文本文件,内容如下。将其保存成index.php文件并复制到网站发布目录中。
<?php
echo phpinfo(); 
?> 
第七步:在IIS中浏览index.php页面文件就能够看出真正的内容了,这说明我们的PHP环境已经搭建成功。
小提示:如果index.php无法正常显示那么我们再来到默认网站属性中的ISAPI筛选器标签,添加一个名为PHP的筛选器,可执行文件选择c:\php\php5isapi.dll即可,这样设置后往往可以解决实际问题。
第八步:当然我们修改设置后需要重新启动IIS或者干脆直接启动计算机即可,重新启动后PHP文件就可以顺利显示了。重新启动IIS的方法是关闭“IIS ADMIN”服务或者直接在默认网站上点右键选择“停止”再“启动”。 
四、总结: 
总体上讲IIS下PHP的运行还是比较稳定的,虽然在执行效率上不如apache与PHP搭配得更如意,但是在企业服务器上必须使用IIS或者多个网站一起通过虚拟目录发布时我们就不得不选择本文介绍的方法来搭建PHP环境了。另外Apache的最新版本和PHP5也存在一定的兼容问题,直接采用IIS与PHP5搭配更可以减少不必要的兼容问题带来的麻烦。
http://blog.csdn.net/nileel/archive/2009/10/10/4648569.aspx