Windows2003+IIS7 Express使用FastCgi运行php

admin3年前服务器101

想在windows 2003中好好跑php,又要节省内存,真是很为难的事情,考虑到IIS7.5 Express可以在WIN2003上跑,不但能以fastcgi的方式支持php,还自带Rewrite组件,只需简单改改web.config的rule规则就可以了。

于是下载了IIS7.5 Express后,安装,还需要对applicationHost.config进行配置,首先得找到这个文件在哪里,如果能在"我的文档"中IIS7Express目录下找到,那就是它了,否则应该就是在IIS7 Express的安装目录下。

1、先修改:defaultDocument节,加入 <add value="index.php" />


<defaultDocument enabled="true">
<files>
<add value="Default.htm" />
<add value="Default.asp" />
<add value="index.htm" />
<add value="index" />
<add value="iisstart.htm" />
<add value="default.aspx" />
<add value="index.php" />
</files>
</defaultDocument>

2、找到fastcgi节。


<fastCgi>
<application fullPath="C:\php\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 expressPHPv5.4" />
</environmentVariables>
</application>
</fastCgi>

3、找到handlles,加入


<add name="PHP_FastCGI" path="*.php" verb="GET,HEAD,POST" modules="FastCgiModule" scriptProcessor="C:\PHP\php-cgi.exe" resourceType="Either" />


尤其要注意的一是,这一句最好加在最前面,也就是在<handlles>下面的第一句,避免被其它Handle抢先处理了。

以上配置中,C:\php\php-cgi.exe 的部分替换成自己的php文件夹中的php-cgi.exe的位置。

4、在<site>配置节下,直接修改站点信息,或直接用appcmd.exe add site来添加站点。

5、找到诸如wordpress的安装文件夹,创建一个web.config文件,在configuration配置节下,添加Gzip压缩规则。


<system.webServer>
<urlCompression doStaticCompression="true" doDynamicCompression="true" />
</system.webServer>

6、同样在web.config中,Wordpress的rewrite完整的web.config文件内容如下:

<configuration>
<system.webServer>
<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="index.php" />
</rule>
</rules>
</rewrite>
</system.webServer>
<system.webServer>
<urlCompression doStaticCompression="true" doDynamicCompression="true" />
</system.webServer>
</configuration>

这样就完全配置完毕了,然后在IIS7 Express目录下,找到IISExpress.exe,直接双击运行,或者用命令行来执行指定加载哪个站点. 
iisexpress.exe /site:'站点名称1"
iisexpress.exe /site:'站点名称2"
访问一下,就会发现访问速度比在windows下使用apache要快得多,而且少跑一个nginx,内存占用整体上也少了很多。


免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

云服务器租用有哪些优势,看懂云服务器租用有哪些注意事项

1.什么是云服务器租用?云服务器租用,顾名思义,就是指将服务器资源租用给客户,在云服务提供商的数据中心中进行部署和管理。云服务器租用多用于互联网应用、电子商务、大型企业等。2.云服务器租用的优势有哪些...

宝塔面板负载状态(load average)中的数据代表了什么?

宝塔的负载状态图表中百分比的含意:50% 以下–此时服务器正以低负载状态运行50 ~ 90%– 服务器负载正常,用户的请求可以及时得到服务器响应90% ~ 100% &ndas...

为什么ICP备案对网站非常重要,ICP备案是网站经营的重要法律依据

ICP备案是指网站依据法律法规,向相关管理部门提出的备案申请。申请通过后,网站才能正常访问。ICP备案的目的是保障互联网上的信息安全和技术发展,同时防止不良信息的传播和利用互联网进行违法最活动。因此,...

IIS 浏览aspx页面出现无法显示XML页的解决方法分享

使用IIS调试.aspx程序时IE提示以下错误:            &nbs...

宝塔面板打开网站No input file specified如何解决?

最近遇到几个客户的网站使用的宝塔面板搭建的网站,打开网站提示:No input file specified,其实这个问题很好解决,应该是防跨站攻击文件路径问题,或者网站运行目录配置错误,解决方案如下...

简析韩国的无服务器技术及其应用领域

简析韩国的无服务器技术及其应用领域

韩国在无服务器技术的发展方面取得了显著的成果。众多科技企业和初创公司在无服务器技术的研究与应用上投入了大量资源。韩国政府也积极支持无服务器技术的发展,通过制定相关政策和提供资金支持,推动了该领域的创新...