IIS7.5配置php5.3并扩展支持伪静态Rewrite
详细步骤说明:
一、安装PHP
- 首先确认IIS中启用了CGI功能:
- IIS 7.5中为了易于PHP程序的安装,增设了PHP Manager模块。只要您简单设定,其它的工作自动到位!下载地址:
http://phpmanager.codeplex.com/releases/view/62183,安装。
- 再开启IIS管理器,会发现里面多了一个PHP Manager图标项了。
- 到http://php.net/downloads.php 下载最新的php版本(此处以php5.3.5为例)。
我们下载【VC9 x86 Non Thread Safe】这个版本的zip包就好(IIS不支持线程安全版本)。然后,解压到C:\PHP5.3.5中就可以了。
- 配置文件修改。
将php.ini-development改名为php.ini,修改php.ini 查找data.timezone 修改为date.timezone = “Asia/Shanghai”,
找到Windows Extensions开启 所需模块,如:php\_curl.dll php\_mysql.dll php\_mysqli.dll php\_xmlrpc.dll php_curl.dll
只要去掉前面的 分号 保存就可以了。
- 回到IIS界面,双击PHP Manager后,点击“Register new PHP Version”,然后选择好c:\php5.3.5\php-cgi.exe,就OK了。
然后静悄悄的php.ini就会为适合IIS7.5的配置默认给你生成好了。
最后核验一下吧,仍在这个界面上,可以点一下“Check phpinfo()”;然后无意外的情况下会弹出令人激动的PHPInfo页面了!
二、安装ISAPI_Rewrite
- 从官网下载完全版ISAPI_Rewrite3(http://www.helicontech.com/download/isapi_rewrite/ISAPI_Rewrite3_0079.msi)并安装。
- 破解ISAPI_Rewrite3,用ISAPI_Rewrite3_0075_cra文件下的两个文件(ISAPI_Rewrite.dll和ISAPI_RewriteSnapin.dll)
覆盖安装路径下的原文件(如果提示文件被占用,可先删除原文件,再复制过去)。
- 在安装目录下找到 httpd.conf 文件。输入以下内容:
RegistrationName= coldstar
RegistrationCode= 2EAD-35GH-66NN-ZYBA
- 重起IIS即可。
PS:安装好后记得给ISAPI\_Rewrite3软件安装目录network service的读权限,否则会出现无法加载ISAPI\_Rewrite的错误。(如果已经正常可忽略该步骤)
三、测试Rewrite伪静态
- 在某个单独网站(如:localhost)新建.htaccess文件,并在文件中写上以下规则:
RewriteEngine on
RewriteBase /
RewriteRule ^get-(.*).html /get.asp?id=$1
#说明:RewriteEngin on表示启用重写功能;RewriteBase / 表示重写的路径是从网站根目录开始。
-
在localhost下新建get.asp文件,文件内容以下:
-
在浏览器中分别输入http://localhost/get-123.html 和 http://localhost/get.asp?id=123
如果结果是一样的,则表明重写成功。
参考文档:
IIS7.5 配置 PHP 5.3.5:
http://www.cnblogs.com/Ryan_j/archive/2011/03/19/1988973.html
IIS伪静态组件(支持多站点) ISAPI_Rewrite3完全版: