想在windows 中好好跑php又要节省内存真是很为难的事情考虑到IIS Express可以在WIN上跑不但能以fastcgi的方式支持php还自带Rewrite组件只需简单改改webconfig的rule规则就可以了
于是下载了IIS Express后安装还需要对applicationHostconfig进行配置首先得找到这个文件在哪里如果能在"我的文档"中IISExpress目录下找到那就是它了否则应该就是在IIS Express的安装目录下
先修改defaultDocument节加入 <add value="indexphp" />
<defaultDocument enabled="true">
<files>
<add value="Defaulthtm" />
<add value="Defaultasp" />
<add value="indexhtm" />
<add value="indexhtml" />
<add value="iisstarthtm" />
<add value="defaultaspx" />
<add value="indexphp" />
</files>
</defaultDocument>
找到fastcgi节
<fastCgi>
<application fullPath="C:phpphpcgiexe" monitorChangesTo="phpini" activityTimeout="" requestTimeout="" instanceMaxRequests="">
<environmentVariables>
<environmentVariable name="PHP_FCGI_MAX_REQUESTS" value="" />
<environmentVariable name="PHPRC" value="C:Program Files (x)iis expressPHPv" />
</environmentVariables>
</application>
</fastCgi>
找到handlles加入
<add name="PHP_FastCGI" path="*php" verb="GETHEADPOST" modules="FastCgiModule" scriptProcessor="C:PHPphpcgiexe" resourceType="Either" />
尤其要注意的一是这一句最好加在最前面也就是在<handlles>下面的第一句避免被其它Handle抢先处理了
以上配置中C:phpphpcgiexe 的部分替换成自己的php文件夹中的phpcgiexe的位置
在<site>配置节下直接修改站点信息或直接用appcmdexe add site来添加站点
找到诸如wordpress的安装文件夹创建一个webconfig文件在configuration配置节下添加Gzip压缩规则
<systemwebServer>
<urlCompression doStaticCompression="true" doDynamicCompression="true" />
</systemwebServer>
同样在webconfig中Wordpress的rewrite完整的webconfig文件内容如下
<configuration>
<systemwebServer>
<rewrite>
<rules>
<rule name="wordpress" patternSyntax="Wildcard">
<match url="*" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="indexphp" />
</rule>
</rules>
</rewrite>
</systemwebServer>
<systemwebServer>
<urlCompression doStaticCompression="true" doDynamicCompression="true" />
</systemwebServer>
</configuration>
这样就完全配置完毕了然后在IIS Express目录下找到IISExpressexe直接双击运行或者用命令行来执行指定加载哪个站点
iisexpressexe /site:站点名称"
iisexpressexe /site:站点名称"
访问一下就会发现访问速度比在windows下使用apache要快得多而且少跑一个nginx内存占用整体上也少了很多