最近在研究WordPress的过程中,想要将其运行在IIS Express下,故整理IIS Express添加PHP fastCgi的方法如下。
IIS Express本就是IIS的一个精简版本,本身还是提供了对PHP fastCgi的支持,但是默认是不开启的。
※笔者环境:
Windows 7 x64,IIS Express 8,PHP 5.4.11
※php文件夹位置
C:\Program Files (x86)\iis express\PHP\v5.4\
※applicationhost.config配置
1 defaultDocument节点中添加<add value="index.php" />。该设置添加index.php的默认首页的支持。(非必需,但推荐)
<defaultDocument enabled="true">
<files>
<add value="Default.htm" />
<add value="Default.asp" />
<add value="index.htm" />
<add value="index.html" />
<add value="iisstart.htm" />
<add value="default.aspx" />
<add value="index.php" />
</files>
</defaultDocument>
2 fastCgi节点中添加如下:
<fastCgi>
<application fullPath="C:\Program Files (x86)\iis express\PHP\v5.4\php-cgi.exe" monitorChangesTo="php.ini" activityTimeout="600" requestTimeout="600" instanceMaxRequests="10000">
<environmentVariables>
<environmentVariable name="PHP_FCGI_MAX_REQUESTS" value="10000" />
<environmentVariable name="PHPRC" value="C:\Program Files (x86)\iis express\PHP\v5.4" />
</environmentVariables>
</application>
</fastCgi>
红色部分为php文件夹中pgp-cgi.exe的路径。
3 handlers节点中添加如下:
<add name="PHP54_via_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\Program Files (x86)\iis express\PHP\v5.4\php-cgi.exe" resourceType="Either" />
红色部分为php文件夹中pgp-cgi.exe的路径。
※完成以上配置,则你的iispress已经可以支持php了。你可以在iisexpress下开发或者配置你的wordpress了。(mysql,wordpress的配置不在本文讨论范围。)
如果不可运行,则请检查你的php.ini文件是否配置正确。并且使用命令行iisexpress /trace:error可以运行iisexpress的运行错误。