IIS+FastCGI +PHP53+MySQL51+Gzip.docx
- 文档编号:5608677
- 上传时间:2022-12-29
- 格式:DOCX
- 页数:41
- 大小:3.34MB
IIS+FastCGI +PHP53+MySQL51+Gzip.docx
《IIS+FastCGI +PHP53+MySQL51+Gzip.docx》由会员分享,可在线阅读,更多相关《IIS+FastCGI +PHP53+MySQL51+Gzip.docx(41页珍藏版)》请在冰豆网上搜索。
IIS+FastCGI+PHP53+MySQL51+Gzip
本文档旨在帮助新手快速配置出IIS+FastCGI+PHP5.3+MySQL5.1+Gzip环境,本文每步操作均有详细的图片说明,只要照做,均可一次配置成功。
=======================================
IIS+FastCGI+PHP5.3+MySQL5.1+Gzip 详细配置图文教程
本文所用的软件名称及下载地址:
PHP5.3.2:
php-5.3.2-nts-Win32-VC9-x86.zip
地址:
MySQL:
mysql-essential-5.1.48-win32.msi
地址:
FastCGI:
这个有两种配置方法,正文中详细介绍
phpMyAdmin:
本文用的是3.3.4版
ZendOptimizer:
目前的ZendOptimizer还不支持PHP5.3.2,等出新版后我们再装。
前言:
PHP5.3的版本选择
现在的PHP5.3ForWindows一共给了四个版本:
VC9x86NonThreadSafe、VC9x86ThreadSafe、VC6x86NonThreadSafe、VC6x86ThreadSafe,参考PHP官网提供下载的地方左边的英文来看看这几个版本有什么区别。
一、如何选择PHP5.3的VC9版本和VC6版本
VC6版本是使用VisualStudio6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本。
VC9版本是使用VisualStudio2008编译器编译的,如果你的PHP是用IIS来架设的,那你就选择VC9版本。
二、如何选择PHP5.3的ThreadSafe和NonThreadSafe版本
先从字面意思上理解,ThreadSafe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。
NonThreadSafe是非线程安全,在执行时不进行线程(Thread)安全检查。
再来看PHP的两种执行方式:
ISAPI和FastCGI。
ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择ThreadSafe版本;
而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择NonThreadSafe版本。
我们使用IIS+FastCGI方式配置服务器环境,所以使用NonThreadSafe版本。
了解了如何选择PHP版本,下面开始我们的IIS+PHP5.3+MySQL5.1+Gzip的配置过程
第一步:
手工配置PHP5.3
下载目前为止最新版的PHP5.3.2
因为手工配置更灵活且更能了解细节,所以我们介绍手工配置PHP,所以选择下载zip文件:
php-5.3.2-nts-Win32-VC9-x86.zip。
1、解压php-5.3.2-nts-Win32-VC9-x86.zip至安装目录,这里是C:
\
2、打开php-5.3.2-nts-Win32-VC9-x86,建立php.ini文件
复制一个新的php.ini-development文件,并将文件名改为phi.ini。
如下图
3、打开php.ini文件,修改extension_dir的值
修改data.timezone的值
选择启用模块:
将用到的模块前的;去掉,注意启用php_exif.dll时,必需将其放在mbstring后面,即将php_exif.dll剪切到php_mbstring.dll后面。
配置FastCGI模式时,将cgi.force_redirect设置为0,将cgi.rfc2616_headers和fastcgi.impersonate设置为1。
稍候我们会使用iProber探针来检测php环境,所以这里必须开启short_open_tag=On,否则,会出现“iProber.phponline910”错误。
至此,php部分配置完毕。
下面我们来在IIS里添加对php的支持,当然,我们采用的FastCGI方式。
第二步:
配置IIS的FastCGI模块
为IIS增加FastCGI模块有两种方式,一种是直接下载FastCGIExtension文件,另一种是使用微软的“web平台安装程序”,在这里我们介绍后者。
第一种方式中FastCGIExtension文件的名称和下载地址为:
文件名:
FastCGIExtension1.5forIIS6.0andIIS5.1-RC(x86)
地址:
该安装程序需要.net2.0支持,请确认已经安装.netFramework2.0。
下面我们来介绍使用微软的“web平台安装程序”来配置FastCGI。
1、FastCGI第一步:
打开微软的“web平台安装程序”,网址是:
打开该网址单击下面红框内的按钮,进入下一步。
在弹出的对话框里,单击运行。
弹出安全警告对话框,再次单击运行。
接下来是下载web安装程序对话框
下载完安装程序后是加载web平台
加载完后,弹出FastCGI安装程序对话框,单击安装继续。
接下来是同意条款,单击我接受
正式进入安装,由于文件较小,安装过程非常迅速。
稍候即完成安装!
最后,单击退出并关闭IE
2、下面在IIS服务里面进行配置,在IIS里右击“网站”节点,然后单击属性,弹出属性对话框。
如图
单击“主目录”选项卡,然后单击“配置”按钮
单击添加,添加一个新的ISAPI项
在C:
\window\system32\inetsrv目录下,选中fcgiext.dll
注意,这里别忘了添加.php扩展名
在C:
\windows\system32\inetsrv文件夹中,找到fcgiext.ini文件,并打开
在fcgiext.ini文件底部添加如下配置信息:
[Types]
php=PHP
[PHP]
ExePath=C:
\php-5.3.2-nts-Win32-VC9-x86\php-cgi.exe
至此,FastCGI配置完成,下面我们来测试下是否配置正确,将iProber探针程序复制到web目录
在浏览器输入:
http:
//127.0.0.1/i/iProber.php,输出如下图:
我们看到以下信息
PHP运行方式CGI-FCGI
PHP版本5.3.2
说明IIS+PHP的FastCGI方式配置成功!
注意,如果出现以下错误信息
============================
ErrorDetails:
ErrorNumber:
14001(0x800736b1)。
ErrorDescription:
由于应用程序配置不正确,应用程序未能启动。
重新安装应用程序可能会纠正这个问题。
HTTPError500-ServerError.
InternetInformationServices(IIS)
============================
则是没有安装VC9运行库即VISUALC++2008,
MicrosoftVisualC++2008RedistributablePackage(x86)下载地址:
第三步:
在IIS上启用Gzip压缩
关于Gzip的作用,这里就不再讨论了,大家可以查查资料
1、启用GZip第一步:
右击“网站”,然后单击“属性”,单击“服务”选项卡,选中红框内的两项,然后单击“确定”。
2、右击IIS下面的Web服务扩展节点,再单击“添加一个新的Web服务扩展”,如下图
添加扩展名为“HTTPCompression”的扩展,注意gzip.dll所在的目录为:
C:
\windows\system32\inetsrv\gzip.dll
在IIS的Web服务扩展里,选中HTTPCompression,然后在左侧单击允许。
3、设置Gzip参数
设置Gzip需要手工修改C:
\windows\system32\inetsrv目录下的MetaBase.xml文件,MetaBase.xml对于IIS的运行非常重要,若被破坏轻则IIS不能正常运行,重则可导致重装系统,所以修改这个文件之前一定要做好备份,下图中名为MetaBase_backup.xml的文件就是一个备份。
下面设置deflate及gzip的具体参数:
设置deflate的压缩参数,其中主要包括文件扩展名,脚本文件扩展名,压缩比例,需要说明的是,这里压缩比例推荐设置为1,我们稍候讨论哪个压缩比最合适。
设置gzip的压缩参数,其中主要包括文件扩展名,脚本文件扩展名,压缩比例,需要说明的是,这里压缩比例仍然推荐设置为1。
配置完成后,启动IIS,使设置生效
4、如果不想停止IIS而直接编辑MetaBase.xml文件,则按下图设置:
在若编辑MetaBase.xml里不想停止IIS,则在IIS节点上,注意是IIS,不是网站,在IIS上右击,单击“属性”
选中“允许直接编辑配置数据库”这一项,可不停止IIS编辑MetaBase.xml文件
5、检测Gzip压缩是否启用
如果大家的网站发布在Internet上,可以使用许多在线检测工具,很多站长网站上都有提供,如何网站是在自己的电脑上试验,要检测Gzip启用情况,需要一些能够抓取HTTP头信息的软件,这里推荐使用HttpAnalyzerV4,下载这个软件后,则可清晰的看到Gzip的作用。
我们先关闭Gzip,看年没有启用Gzip压缩时的HTTP头信息截图:
可以看到,上图中的CompressionSaving显示为0,我们启用Gzip压缩,再来看一下HTTP头信息情况:
上图中可以看到,Content-Encoding显示为gzip,右侧CompressionSaving即压缩率显示为73.29%,说明压缩还是很有效的。
用这个软件大家也可以测试一下自己网站的压缩率。
6、有关压缩率的设定
根据官方的测试数据,200KB的网页依据不同gzip等级的压缩比例为
Gziplevel10.593
Gziplevel6(预设)0.586
Gziplevel90.585
由此可知,大于1以后的压缩效益是很低的,可官方说法,这会消耗服务器资源,因此他们强烈建议设定成1,gzip预设是6。
用某论坛的实际测试结果如下:
level9:
88.7%压缩比
level1:
86.7%压缩比
用我自己的网站测试数据如下
Level1时的压缩比为62.93%,在Level9时的压缩比为64.30%,可以看到Level1和Level9基本相差不大。
所以我是建议用1就好,用9对服务器负载会重,人少没感觉,人一多就会服务器负载就重多了,而且设成1和9压缩比其实差不了多少。
第四步:
安装MySQL5.1
我们这里介绍的是MySQL5.1.48版本。
MySQL的下载地址在本篇开头已经给出。
关于MySQL安装比较简单,这里只给出截图,不再详述
至此,IIS+FastCGI+PHP5.3+MySQL+Gzip完整配置完成。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IIS+FastCGI +PHP53+MySQL51+Gzip IIS FastCGI PHP53 MySQL51 Gzip