IIS6.0以FastCGI模式加载php环境的测试

合集下载

win2003+iis6+php533(fastcgi)+mysql5150安装配置

win2003+iis6+php533(fastcgi)+mysql5150安装配置

Win2003+IIS6+PHP5.33(FastCGI)+MySQl5.1.50安装配置操作系统:Windows 2003 Server SP2 IIS6.0所需软件:3个fcgisetup_1.5_x86_rtwmysql-essential-5.1.50-win32php-5.3.3-Win32-VC9-x86请自行下载一、安装FastCGI双击运行fcgisetup_1.5_x86_rtw.msi进行安装,安装后在 C:\WINDOWS\system32\inetsrv 目录下产生了五个文件。

如下图:同时在 IIS 的“Web 服务扩展”里多了 FastCGI Handler。

到此,FastCGI安装完成。

二、安装PHP5.33运行php-5.3.3-Win32-VC9-x86.msi,安装中出现对话框,选择安装目录D:\PHP,然后再选中IIS FASTCGI;直到完成安装。

三、配置IIS支持PHP1.FACTCGI安装后在C:\windows\system32\inetsrv下有五个文件,其中有用的是:fcgtext.dll,fcgitext.ini;打开FASTCGI配置文件fcgitext.ini,在最后[Types]修改为这样的样式:[Types]php=PHP[PHP]ExePath=D:\php\php-cgi.exe其中D:\php\php-cgi.exe为php安装目录2.打开IIS管理器,网站上点右键-属性-主目录-配置-添加fcgiext.dll为可执行文件,配置如下图经过上述步骤,已经完成了PHP5.3.3在iis6上的安装3.测试配置环境:整个过程操作好了过后,写一个test.php测试一下配置的相关环境,测试代码如下:<?phpphpinfo();?>若出现下图则说明已经成功启用FastCGI:四、安装MySQL5.1.501、在选择安装类型有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,我们选择“Custom”,有更多的选项,可以自定义安装位置,也方便熟悉安装过程2、选择安装内容和安装路径1、用鼠标点选MySQL Server,程序默认的安装路径是C:\Program Files\MySQL\MySQL Server 5.1,点击安装路径右侧的Change...按钮来更改默认安装路径如D:/MySQL2、以往的版本都是将数据库文件放在安装路径下的data目录,但这个版本需要单独设置,如上图所示。

最新IIS+PHP+MySQL+Zend_Guard_Loader(ZendOptimizer)+phpMyAdmin环境配置图解

最新IIS+PHP+MySQL+Zend_Guard_Loader(ZendOptimizer)+phpMyAdmin环境配置图解

IIS+PHP+MySQL+Zend Guard Loader(ZendOptimizer)+phpMyAdmin环境配置图解[2012-03-14更新]发表于2012-02-09由丑颜本文将详细讲解IIS 6.0+PHP 5.3.10 (VC9 x86 Non Thread Safe)+Mysql 5.5.20+Zend Guard Loader (Runtime for PHP 5.3)(即ZendOptimizer的升级版)+phpMyAdmin 3.4.9环境配置过程。

操作系统以Windows.Server.2003为例,其他系统仍可以参考。

第一步,下载相关软件本次实例所使用的是系统是Windows.Server.2003 32位版本,因此以下软件都是下载对应这个版本的,使用其他版本的windows系统的同学请自行下载相对应软件。

如链接失效,请直接在官方网站查找。

FastCGI 1.5 for IIS 6 and 5.1官方下载网页:/download/FastCGI下载地址:/?linkid=9707432PHP 5.3.10 VC9 x86 Non Thread Safe官方下载网页:/download/下载地址:/downloads/releases/php-5.3.10-nts-Win32-VC9-x86.msiMysql 5.5.20官方下载网页:/downloads/mysql/5.5.html下载地址:.tw/Downloads/MySQL-5.5/mysql-5.5.20-win32.msiZend Guard Loader (Runtime for PHP 5.3)官方下载网页:/products/guard/downloads下载地址:/guard/5.5.0/ZendGuardLoader-php-5.3-Windows.zip phpMyAdmin 3.4.9官方下载网页:/home_page/downloads.php下载地址:/project/phpmyadmin/phpMyAdmin/3.4.9/phpMyAdmin-3 .4.9-all-languages.7z第二步,安装配置软件1、安装IIS打开“控制面板”,进入“添加或删除程序”,点击“添加/删除windows组件”,弹出“windows 组件向导”对话框。

PHP性能调优---PHP-FPM配置及使用总结

PHP性能调优---PHP-FPM配置及使用总结

PHP性能调优---PHP-FPM配置及使⽤总结-FPM配置及使⽤总结:-FPM是⼀个PHP FastCGI的管理器,它实际上就是PHP源代码的补丁,旨在将FastCGI进程管理引进到PHP软件包中,我们必须将其patch 到PHP源代码中,然后再⾏编译才能使⽤。

⽽现在我们可以在PHP 5.3.2及更新版本中直接开启并使⽤即可,因为PHP从该版本已经将其收⼊到软件包中,所以其不再是补丁包的存在了。

· ⼏个概念的理解· Nginx+PHP配置· Php-Fpm的操作⼀、⼏个概念的理解1)、CGICGI全称“公共⽹关接⼝”(Common Gateway Interface),是HTTP服务器与其它机器上的程序进⾏通信的接⼝,其程序须运⾏在⽹络服务器上。

NOTE:CGI可以⽤任何⼀种语⾔编写,只要这种语⾔具有标准输⼊、输出和环境变量。

2)、FastCGIFastCGI是⼀个常驻型的CGI,它可以⼀直执⾏,只要激活后,不会每次都要花费时间去fork⼀次(这是CGI最为⼈诟病的fork-and-execute模式)。

它还⽀持分布式的运算,即 FastCGI 程序可以在⽹站服务器以外的主机上执⾏并且接受来⾃其它⽹站服务器来的请求。

FastCGI是语⾔⽆关的、可伸缩的CGI开放扩展,其主要⾏为是将CGI解释器进程保持在内存中并因此获得较⾼的性能。

我们知道,CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保存在内存中并接受FastCGI进程管理器调度,那么就可以提供良好的性能、伸缩性等。

优点:1. FastCGI具有语⾔⽆关性;2. FastCGI独⽴于核⼼web服务器运⾏,提供了⼀个⽐API更安全的环境。

APIs把应⽤程序的代码与核⼼的web服务器链接在⼀起,这意味着在⼀个错误的API的应⽤程序可能会损坏其他应⽤程序或核⼼服务器。

⽽恶意的API的应⽤程序代码甚⾄可以窃取另⼀个应⽤程序或核⼼服务器的密钥;3. FastCGI技术⽬前⽀持语⾔有:C/C++、、Perl、Tcl、、SmallTalk、Ruby等。

【图文教程】WindowsServer2012一键安装PHP环境(PHP5.4+FastCGI模式)

【图文教程】WindowsServer2012一键安装PHP环境(PHP5.4+FastCGI模式)

【图文教程】WindowsServer2012一键安装PHP环境(PHP5.4+FastCGI模式)本文通过最简单快捷的方式,讲述从崭新的Windows Server 2012(R2),通过护卫神·PHP套件一键部署PHP运行环境的过程,十分简单。

一、护卫神PHP套件包的特点:1、包内各部件均来自官方稳定版本,加上护卫神构建的安全体系,MySQL数据库和PhpMyadmin站点已经自动配置安全,一键安装,放心使用;2、PHP版本为5.4.31,是32位的PHP核心,可以支持32位或64位操作系统,采用的非线程安全模式,FastCGI,运行速度快;3、MySQL版本为5.5.19,MyISAM模式。

二、护卫神·PHP套件 5.4 版本所包含的内容:·PHP 5.4.31(FastCGI模式)·MySQL 5.5.19.0(MyISAM模式)·PhpMyAdmin 3.5.3·MyODBC 5.2.6·ZendLoader 6.0.0·MySQL密码修改器三、安装步骤:1、首先要配置IIS环境,需要开启的功能如图:2、然后,下载PHP套件,解压后,先点击“vcredist(VC9运行环境安装).exe”安装VC运行环境,再点击“护卫神·PHP套件(FastCGI-PHP5.4.31-32bit)exe”开始安装:3、选择安装位置,一般默认选择D盘即可,此时MySQL数据也会放到这个位置:4、安装完成,记得修改root密码5、安装完成,点击【管理PhpMyAdmin】进入MySQL数据库管理:6、输入默认的账户密码,账户为root,密码为 务必记得修改(phpmyadmin默认端口为999)7、进入PhpMyAdmin管理中心8、运行phpinfo(); 查看PHP版本信息:9、打开护卫神·主机管理系统(http://127.0.0.1:6588/admin/),如果要开设MySQL数据库,请设置Root密码:10、创建MySQL数据库,名为:mysqltest54 ,注意不要用数字开头11、数据库创建完成11、刷新PhpMyAdmin,可以看到新创建的mysqltest54已经创建成功了:护卫神四、注意事项:1、PHP5.4套件能运行在Windows 2003/2008/2012平台,是32位套件;2、建议搭配【护卫神·主机管理系统】使用,安全方便。

实战Nginx与PHP(FastCGI)的作用、安装、配置与优化

实战Nginx与PHP(FastCGI)的作用、安装、配置与优化

实战Nginx与PHP(FastCGI)的作用、安装、配置与优化一、什么是 FastCGIFastCGI是一个可伸缩地、高速地在HTTP server和动态脚本语言间通信的接口。

多数流行的HTTP server都支持FastCGI,包括Apache、Nginx和lighttpd等,同时,FastCGI也被许多脚本语言所支持,其中就有PHP。

FastCGI是从CGI发展改进而来的。

传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序时都需要重新启动脚本解析器来执行解析,然后结果被返回给HTTP服务器。

这在处理高并发访问时,几乎是不可用的。

另外传统的CGI接口方式安全性也很差,现在已经很少被使用了。

FastCGI接口方式采用C/S结构,可以将HTTP服务器和脚本解析服务器分开,同时在脚本解析服务器上启动一个或者多个脚本解析守护进程。

当HTTP服务器每次遇到动态程序时,可以将其直接交付给FastCGI进程来执行,然后将得到的结果返回给浏览器。

这种方式可以让HTTP服务器专一地处理静态请求或者将动态脚本服务器的结果返回给客户端,这在很大程度上提高了整个应用系统的性能。

二、Nginx+FastCGI运行原理Nginx不支持对外部程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口来调用。

FastCGI接口在Linux下是socket,(这个socket可以是文件socket,也可以是ip socket)。

为了调用CGI程序,还需要一个FastCGI的wrapper (wrapper可以理解为用于启动另一个程序的程序),这个wrapper绑定在某个固定socket上,如端口或者文件socket。

当Nginx将CGI请求发送给这个socket的时候,通过FastCGI接口,wrapper接纳到请求,然后派生出一个新的线程,这个线程调用解释器或者外部程序处理脚本并读取返回数据;接着,wrapper再将返回的数据通过FastCGI接口,沿着固定的socket传递给Nginx;最后,Nginx将返回的数据发送给客户端,这就是Nginx+FastCGI的整个运作过程。

在IIS中配置PHP环境

在IIS中配置PHP环境

xp+iis下配置php5备忘:php版本: PHP 5.1.2 zip package (8,926Kb) - 12 Jan 20061.解压php文件到c:\php2.将php文件夹下php.ini-dist 改名为php.ini ,然后找到extension_dir = "./" 改为extension_dir = "c:\php\ext"(大概在461行)3.去掉;extension=php_mysql.dll 前的";"注释符号(大概在589行)4.复制php.ini到C:\WINDOWS再复制php5ts.dll和libmysql.dll到WINDOWS\system32\中5.打开IIS,添加一个php后缀. (指向c:\php\php5isapi.dll) .重启IIS.===============================================================网上有很多关于PHP在IIS下配置的教程,但都是一些很理性化的东西,我从里面整理出来这个教程发出来为了方便参考,,有什么问题也可以大家一起交流,,如果有什么不对的地方,请指正..下面的教程都是在windows 2000下实现的,其他系统请自己参照修改,操作系统目录:c:\winntPHP默认安装目录:C:\phpPHP版本:PHP 4.3.10 下载地址:/downloads.php (Windows Binaries)Mysql版本:mysql-4.0.22-win 下载地址:/downloads/zend :Zend Optimizer v2.5.5 下载地址:/soft17/ZendOptimizerWindows-i386.exe首先将php压缩包解压到c:\php目录下,先php.ini-dist改名为php.ini然后php.ini 和php.exe复制到winnt目录...php4ts.dll和php4isapi.dll(这个在sapi目录中)复制到winnt/system32 目录..........为了使你的PHP能支持更多的模块,用记事本打开Php.ini在里面搜索extension_dir 将值./改为C:\PHP\extensions然后搜索;Windows Extensions 将下面的扩展模块打开,只要将前面的;去掉便可以...但有部分模块是不支持的..在IIS下建立建一个PHP程序测试目录,如D:\WEB,在"Internet服务管理器"中,右击"默认Web站点->新建->站点",别名为web,实际路径为D:\web要有读取、运行脚本和浏览权限;在IIS的ISAPI刷选器中添加php的筛选器php有两种运行的环境模式... 但都是从这里添加1.如果你想用Isapi模式,在IIS下--主目录配置修改可执行路径:C:\WINNT\System32\php4isapi.dll如果想用CGI/FastCGI模式,先在php.ini搜索cgi.force_redirect = 将前面的;号去掉,将值改为0 (默认为1) 然后请在IIS下----主目录配置修改可执行路径:C:\WINNT\php.exe做完这些准备工作后不要忘记重新启动IIS的WWW服务;在D:\web目录下写一个测试PHP环境的文件info.php,内容为:Phpinfo();?>然后在浏览器中输入http://你的IP/info.php你将看到一个关于你的系统运行的PHP环境的相关信息ZEND的安装:一路NEXT,然后到下面那个画面时,请选择IIS,在继续NEXT后,选择php.ini所在的目录都是默认的...然后还是NEXT,,安装过程中会自动备份你的PHP.INI的文件和重新启动IIS服务..MYSQL的安装:MYSQL的安装相对比较简单,,一路next,安装完毕,,会自动作为系统的一个服务启动. 在这里不再一一描述...然后php.ini 和php.exe复制到winnt目录...php4ts.dll和php4isapi.dll(这个在sapi目录中)复制到winnt/system32 目录..........为了使你的PHP能支持更多的模块,用记事本打开Php.ini在里面搜索extension_dir 将值./改为C:\PHP\extensions然后搜索;Windows Extensions 将下面的扩展模块打开,只要将前面的;去掉便可以...但有部分模块是不支持的..在IIS下建立建一个PHP程序测试目录,如D:\WEB,在"Internet 服务管理器"中,右击"默认Web站点->新建->站点",别名为web,实际路径为D:\web 要有读取、运行脚本和浏览权限;在IIS的ISAPI刷选器中添加php的筛选器php有两种运行的环境模式... 但都是从这里添加然后选择添加1.如果你想用Isapi模式,在IIS下--主目录配置修改可执行路径:C:\WINNT\System32\php4isapi.dll 此处路径也可以是你php文件放置的路径比如C:\php\php4isapi.dll此处路径也可以是你php文件放置的路径比如C:\php\php4isapi.dll如果想用CGI/FastCGI模式,先在php.ini搜索cgi.force_redirect = 将前面的;号去掉,将值改为0 (默认为1)然后请在IIS下----主目录配置修改可执行路径:C:\WINNT\php.exe 此处路径也可以是你php文件放置的路径比如C:\php\php.exe做完这些准备工作后不要忘记重新启动IIS的WWW服务;在D:\web目录下写一个测试PHP环境的文件info.php, 内容为:Phpinfo();?>然后在浏览器中输入http://你的IP/info.php你将看到一个关于你的系统运行的PHP环境的相关信息ZEND的安装:一路NEXT,然后到下面那个画面时,请选择IIS,在继续NEXT后,选择php.ini所在的目录都是默认的...然后还是NEXT,,安装过程中会自动备份你的PHP.INI的文件和重新启动IIS服务..MYSQL的安装:MYSQL的安装相对比较简单,,一路next,安装完毕,,会自动作为系统的一个服务启动.在这里不再一一描述...至此,你的iis下支持php+mysql+zend就成功了,当然zend可以选择安装,不安装也不耽误使用。

php5.2.17 + iis6 fastcgi模式安装

php5.2.17 + iis6 fastcgi模式安装
上载文件的最大许可大小 ,根据你的需求更改数值,M是单位:兆。
在论坛发表贴子时,您post_max_size 设为10M,而此项设成了2M,那么您只能上传最大为2M的附件,且可以同时上传5个.
配置网站
打开IIS管理器,网站上点右键-属性-主目录-配置-添加.php映射,
可执行文件路径:C:\WINDOWS\system32\inetsrv\fcgiext.dll
先运行c:\PHP\php-cgi.exe如果能进入命令窗口并只有光标,说明FastCGI能正常调用php-cgi,否则会提示错误,这点对使用微软的fastcgi模式很重要。
写个 php 测试下吧
修改完在IIS上或者命令提示符运行iisreset命令重启IIS服务,这步很重要!
测试是否安装成功!
; date.timezone =
更改为并去除前面的“;”:
[Date]
; Defines the default timezone used by the date functions
; /date.timezone
date.timezone = Asia/Shanghai
查找:extension_dir = “./”
将其路径知道你的PHP目录下的扩展功能目录中,这里PHP5对应修改为extension_dir = “c:/PHP/ext” 。
(设置上传目录,如果不设置会影响附件等正常的上传)再在e盘下建立双文件夹,e:\temp\temp
查找 ;upload_tmp_dir =
搜索 ; Windows Extensions,定位到php.ini文件的extension,将下面列出的常用扩展前面的分号注释符去掉:

php-FastCGI 进程意外退出 解决办法

php-FastCGI 进程意外退出 解决办法

"php-cgi.exe - FastCGI 进程意外退出" 解决办法问题描述:
win7下iis中php-cgi.exe - FastCGI 进程意外退出
错误提示:
HTTP 错误500.0 - Internal Server Error
D:\phpStudy\phpf\php-cgi.exe - FastCGI 进程意外退出
解决方案1:
服务器windows2008上面配置PHP时。

IIS7.0显示正常,但phpinfo.php显示不正常,出现“HTTP 错误500.0 - Internal Server Error
C:\PHPServer\PHP\php-cgi.exe - FastCGI 进程意外退出”的提示。

双击PHP目录下的文件php.exe则出现“msvcr110.dll”丢失的提示。

到Microsoft网站下载“Microsoft Visual C++ 2012 Redistributable”软件包安装,注意86及64都安装,安装好后,再双击PHP目录下的文件php.exe,则就不提示“msvcr110.dll”丢失了,一切正常。

网站测试http://localhost/phpinfo.php也出现了“PHP Version 5.6.30”版本的信息提示。

说明支持PHP了。

文件下载地址:
/zh-CN/download/details.aspx?id=30679
解决方案2:
我的情况是用的是阿里云服务器本身一开始用的正常情况下突然重启服务器后,php显示上图错误,百度各种解决方案都无法解决,最后服务器再次重启下就好了,所以我这种情况有可能是,强制重启服务器出现的意外情况。

IIS+PHP环境配置教程,如何在IIS运行PHP

IIS+PHP环境配置教程,如何在IIS运行PHP

IIS+PHP环境配置教程,如何在IIS运行PHP文章来自:大学生校园网 详文参考:/html/web/exchange/2010/0319/3272.html编辑:蓝色木头百度空间地址/ibluewood很多PHP爱好者,在自己的本地电脑上架设PHP开发环境,但是由于以前安装有IIS服务器,PHP是否也可以在IIS下运行呢?答案是肯定的,下面我们来具体讲述下怎么在本地架设IIS+PHP环境。

一、环境需求和准备工作:笔者选择了PHP5.2版本,而IIS则是XP系统自带的IIS5。

首先我们要安装IIS组件,默认情况下在XP系统是没有安装的。

第一步:通过控制面板的添加/删除Windows组件完成IIS组件的安装工作。

第二步:在添加/删除Windows组件选项窗口中我们双击Internet信息服务(IIS),然后把里面的包括internet信息服务管理单元,公用文件,万维网服务选中。

(如图1)图1第三步:插入XP SP2系统光盘复制必须文件到本地硬盘,安装完毕后我们可以从“管理工具”中的“internet信息服务”启动IIS程序。

(如图2)图2二、安装PHP程序及设置:安装好IIS后我们就可以发布相应的网站了,但是这时还无法浏览PHP语言建立的页面,我们需要先安装PHP并设置必须的参数。

第一步:下载PHP主程序,笔者使用的是PHP 5.2,解压缩到本地磁盘c盘根目录。

(如图3)附:PHP5.2.3下载地址/downloads.php#v5图3第二步:接下来将PHP文件夹中的php.ini-dist复制到C:\WINDOWS目录下并改名为php.ini,复制php5ts.dll和libmysql.dll两个文件到C:\WINDOWS\system32中。

(如图4)把extension_dir = "./"修改为extension_dir = "C:\php\ext";另外还需要把“;extension=php_mysql.dll”前的分号去掉,改成extension=php_mysql.dll。

渗透测试网安面试题汇总

渗透测试网安面试题汇总

渗透测试⽹安⾯试题汇总为了应对校招,我有点⼼虚,所以花了⼏天时间整理了⼀些⽹安⾯试题--希望对⼤家能有所帮助(⽐较基础的漏洞原理和防护绕过就先过滤了--⼤家应该都⽿熟能详了):1、JWT(json web token)攻击⼿法(头部、负载、签名)?未校验签名 解码后换内容再编码禁⽤哈希 算法修改为none暴破弱密钥操纵Key ID 原因是key ID ⾥的内容可能被作为参数进数据库或者查询 (SQL注⼊、⽬录遍历、命令注⼊)2、如何实现跨域?jsonp跨域CORS跨域代理跨域请求(CDN)Html5 postMessage ⽅法修改 document.domain 跨⼦域(可跨同级域或⽗域)基于 Html5 websocket 协议3、jsonp跨域和CORS跨域的区别?(严格说这两种都属于CSRF漏洞)jsonp是jquery提供的跨域⽅式cors是w3c提供的⼀个跨域标准——————————————————————jsonp只⽀持get⽅式的跨域cors⽀持get和post⽅式的跨域——————————————————————jsonp⽀持所有的浏览器(因为所有浏览器都可以使⽤script标签发送请求)cors不⽀持IE10以下的浏览器4、SSRF漏洞利⽤本地:⽂件读取:file:///etc/passwd使⽤dict协议获取Redis配置信息:dict://127.0.0.1:6379/info使⽤gopher协议⼀键反弹Redis(未授权访问) shell fastcgi攻击内⽹中⽐较脆弱的服务:Redis、数据库、fastcgi等远程:读⽂件发送到远程服务器跳板5、DNS外带可以⽤在那些漏洞?sql盲XXE和SSRFXSS⽆回显命令执⾏⽆回显6、数据库种类?关系型数据库(SQL):MySql、Oracle、MSSQL、Access、Sqlite、postgersql⾮关系型数据库(NO SQL):mongodb、RedisXml⽂件:Xpath注⼊7、SQL和NoSQL的区别?SQL优点:结构稳定、逻辑性强、易于理解SQL缺点:不适于⾼并发、不适于海量数据⾼效读写、维护开销⼤、相对nosql速度慢NoSql优点:易扩展、数据结构灵活、查询速度快⽐较:没有好坏之分,只看应⽤环境。

Windows下 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程

Windows下 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程

Windows下 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程这篇文章主要介绍了Windows IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程,使iis服务器和php共用80端口进行网站共存开发,需要的朋友可以参考下。

准备篇一、环境说明:操作系统:Windows7以上版本及其对应的服务器版本,本文以Windows Server2012 R2服务器系统为例。

PHP版本:php 5.6.15MySQL版本:MySQL 5.7.10二、相关软件下载:1、PHP套装xampp下载:https:///zh_cn/download_success.html2、VC++运行库合集:(备用,如果没安装VC++运行库的,需先安装这个)3、Microsoft URL 重写模块2.0下载地址(IIS8.5伪静态需要此插件):/download/4/E/7/4E7ECE9A-DF55-4F90-A354-B497072BDE0A/rewrite _x64_zh-CN.msi如果遇到有什么问题,也可以点击这里。

安装篇一、安装IIS8.5安装IIS的前提:系统已经集成.NET Framework。

为节省篇幅,如果未安装.NET框架,请先参阅这个教程:/article/54b6b9c0d7cc6c2d583b4703.html在WindowsServer系统环境下安装IIS服务器管理器-添加角色和功能下一步选择:基于角色或基于功能的安装下一步选择:从服务器池中选择服务器下一步选择:Web服务器(IIS)添加功能下一步下一步全部选上,然后下一步;下一步安装正在安装中显示安装成功,点关闭。

可以看到角色和服务器组中已经有了IIS打开IE浏览器,输入localhost或者127.0.0.1会看到下面的界面IIS8.5已经安装完成。

在Windows桌面环境下安装IIS打开程序和功能,点击启用或关闭Windows功能;找到Internet Information Services,全部勾上;点确定,等待安装完成;二、安装xampp 运行安装程序:选择组件,默认全选即可,点Next;选择安装位置,最好不要装在C盘,推荐安装到其他盘,点Next;Next;点Next开始安装;正在安装;安装完成后,进入到安装目录下,以管理员身份运行xampp控制面板;点击mysql前面的红叉图标,安装mysql服务,其他的先不管,只装mysql,Apache服务一定不要安装;变为绿勾后,点击start按钮启动mysql数据库;Mysql数据库已经配置好了,接下来配置php参数;xampp安装目录下打开php文件夹,找到php.ini用记事本打开;做如下修改:date.timezone = PRC #设置时区为中国时区register_globals = On #开启GET数据调用short_open_tag = On #php支持短标签cgi.force_redirect = 0 #开启以CGI方式运行phpfastcgi.impersonate = 1;cgi.rfc2616_headers = 1以下php扩展模块,根据需要选择开启,取消前面的分号为开始相应扩展模块extension=php_curl.dllextension=php_gd2.dllextension=php_mbstring.dllextension=php_exif.dllextension=php_mysql.dllextension=php_mysqli.dllextension=php_sockets.dllextension=php_xmlrpc.dllextension=php_pdo_mysql.dll最后,保存退出配置IIS支持PHP打开:控制面板-系统和安全-管理工具-Internet Information Services(IIS)管理器双击左边“起始页”下面的计算机名称找到中间的IIS部分,打开“处理程序映射”点右边的“添加模块映射”请求路径:*.php模块:FastCgiModule可执行文件(可选):\xampp\php\php-cgi.exe名称:php最后,确定点“是”双击左边“起始页”下面的计算机名称找到中间的IIS部分,打开“FastCGI设置”右键选中:…\php-cgi.exe然后选择编辑监视对文件所做的更改:\xampp\php\php.ini环境变量,点旁边的"..."点“添加”Name:PHP_FCGI_MAX_REQUESTSValue:1000确定确定。

Windows7 IIS7下以FastCgi和ISAPI方法安装配置PHP5教程

Windows7 IIS7下以FastCgi和ISAPI方法安装配置PHP5教程

准备工作在完成IIS上进行PHP5安装配置工作之前,首先需要下载PHP5.2和PHP5.3,PHP5.3以php-5.3.2-Win32- VC9-x86为准,具体下载地址请参考PHP环境搭建:Windows7 Apache+PHP+Mysql一文。

Windows7 IIS7安装在进行IIS7 PHP安装配置之前,首先需要安装IIS7,Windows7默认并没有安装IIS,安装过程如下:首先进入控制面板,点击程序和功能,再点击左侧打开和关闭Windows功能,勾选Internet Information Services可承载的Web核心,确定安装。

在完成安装后,在勾选Internet信息服务,选择安装必要的IIS功能,注意由于在配置PHP5.2和PHP5.3 时,IIS7中是以ISAPI和FastCgi方式配置PHP的,所以Cgi和ISAPI 扩展和ISAPI筛选器务必勾选(此处由于我首先以ISAPI方式配置PHP5.2,我没有勾选Cgi),如图:安装IIS7在完成Windows7 IIS7的安装后,即可在控制面板中的管理工具中看到Internet信息服务管理器选项。

如何在Windows7 IIS7上以ISAPI方式配置PHP5.2?IIS7 PHP5.2配置第一步:php.ini配置解压php-5.2.13-Win32-VC6-x86.zip,重命名为php52iis,将其复制到C盘根目录下,将php.ini- list文件名更改为php.ini,打开php.ini进行配置,php.ini的配置与PHP环境搭建:Windows7 Apache+PHP+Mysql基本一样,注意extension_dir的目录指向必须准确,即1 extension_dir = "C:/php52iis/ext"另外在PHP5.2版本中没有date.timezone选项,所以无需设置。

在完成PHP5.2中php.ini的配置工作后,将其复制至C:\WINDOWS目录下,同时将PHP52iis目录下的libmcrypt.dll,libmysql.dll,php5ts.dll三个文件到C:/windows/System32目录下。

7款最常用的PHP本地测试环境PHP本地测试本地服务器网站制作

7款最常用的PHP本地测试环境PHP本地测试本地服务器网站制作

7款最常用的PHP本地测试环境PHP本地测试本地服务器网站制作PHP是一种常用的服务器端脚本语言,用于开发Web应用程序。

在进行PHP网站制作时,为了提高开发效率和方便调试,常常会使用本地测试环境来进行代码的编写和调试。

下面介绍了7款最常用的PHP本地测试环境。

1.XAMPPXAMPP是一个流行的开发环境套件,包括Apache、PHP、MySQL和其他常用的开发运行环境。

它为开发者提供了一个完整的开发环境,可以轻松地在本地搭建一个PHP开发服务器。

XAMPP还提供了一个用户友好的控制面板,方便管理和配置各个组件。

2. WampServerWampServer是一个适用于Windows系统的PHP开发环境。

它集成了Apache、PHP和MySQL,并包含了phpMyAdmin来管理数据库。

通过WampServer,开发者可以方便地在本地创建和管理PHP网站,快速进行开发和调试。

3.MAMPMAMP是面向Mac操作系统的PHP开发环境。

它提供了类似于XAMPP 和WampServer的功能,包括Apache、PHP和MySQL。

MAMP还具有一个简单易用的控制面板,方便配置和管理本地服务器。

4. Laravel ValetLaravel Valet是一个专门为Laravel框架打造的PHP开发环境。

它使用了Mac的本地开发工具来快速创建和管理基于Laravel的项目。

Laravel Valet提供了一个简单的命令行界面,可以轻松切换并快速设置多个项目。

5. DockerDocker是一个开源的容器化平台,可以快速部署和运行应用程序。

通过使用Docker容器,开发者可以方便地在本地搭建一个PHP开发环境,隔离运行环境以确保每个项目都有独立的环境配置。

6. PhpStorm7. Visual Studio Code总结:。

WINDOWS7IIS7.5配置PHP环境

WINDOWS7IIS7.5配置PHP环境

WINDOWS7IIS7.5配置PHP环境使用传统的增加ISAPI的方法在WIN7有点问题,我的问题是首页可以打开,安装PHP程序进入到关键创建数据库表的环节网页无法显示,于是弃用原来的方式!从网上看到IIS7.5有了更好的解决方案!就是FastCGI,配置使用了一下,果然速度非常快!而且以后再增点网站和虚拟目录时,只使用默认的defaultAppPool模型,不用重复增加PHP程序映射,就象以往IIS那样增加网站就可以运行PHP,非常方便!一、安装PHP5IIS7.5安装就无需再说了,本人的空间里有相关的教程!安装PHP,其实严格来说不是安装,只要将下载的PHP程序包解压至D:\PHP5目录下,找到文件:php.ini-recommended,将其改名为php.ini,接下来打开php.ini,查找:extension_dir = "./" 将此行修改为:extension_dir = "D:\PHP5\ext\" ,剩下的按照如图参数配置,然后保存并关闭。

二、增加PHP程序映射打开IIS,方法:开始-搜索框里:IIS,回车打开IIS!先点一下左边的主机,再到右边找到处理程序映射并双击!双击后会打开处理程序映射窗口如下:可右键添加模块映射或点右边红框链接也会出现新增窗口:请求路径输入:*.php;模块输入:FastCgiModule可执行文件选择:D:\php5\php-cgi.exe名称随便输入一个自己能明白的名称:myphp输入完成点确认完成模块映射的增加!三、设置模块属性一:回到IIS功能视图,找到“FastCgi设置”,双击打开:点击右侧的“编辑”链接:在环境变量集合里添加一个名称为PHP_FCGI_MAX_REQUESTS,VALUE为10000的项目;如图:添加对php.ini的文件监视,可以在修改php配置之后无需重启IIS而让更改生效!在监视对文件所做的修改项目右侧将文件定位到:D:\php5\php.ini,如下图,这样我们的工作就完成了大半了!接下来可以增加PHP站点了:四、增加PHP站点如下图配置网站:这样,一个PHP站点就建成了,注意WIN7的IIS7.5已经开始支持多站点创建,不过端口必需不能冲突!还有一个问题,就是默认文档修改的问题!通常如果在站点里增加默认文档会提示无法写入web.config配置文件的问题,我的解决方法是先在主机下增加默认文档,因为主机的默认文档都会继承到各站点或虚目录的!目前我不知道如何单独调整站点的顺序或文档!。

7款最常用的PHP本地测试环境【PHP本地测试、本地服务器、网站制作必备工具】

7款最常用的PHP本地测试环境【PHP本地测试、本地服务器、网站制作必备工具】

7款最常用的PHP本地测试环境【PHP本地测试、本地服务器、网站制作必备工具】, , , ,7款最常用的PHP本地测试环境【PHP本地测试、本地服务器、网站制作必备工具】Wordpress够流行了吧,它是一个用PHP编写的强大的博客平台。

使用它来架设一个博客平台相关容易,是新手建站比较方便的工具。

但是要真正体会Wordpress(以下简称WP)强大,插件是不可少的东西。

一般来说,我们不可能想试一个插件就把文件通过FTP来上传,然后去自己的网站里试,那样风险大了点。

所以我们需要在本地计算机上搭建一个PHP平台。

我就把常用的PHP本地测试平台都收集一下,给需要的人提供方便。

一般来说,本地的PHP平台分为两种,一种是LAMP,即为Linux+Apache+MySql+PHP;另一种是WAMP,它是Windows+Apache+MySql+PHP,而前者一般优秀于后者。

如果让我们自己来安装Apache+MySql+PHP,难度不少,改一堆代码不说,还容易出错。

再者考虑到现在大家大多使用的是Windows操作系统,自己又是个Linux盲,所以我提供的这些本地测试平台都是WAMP,都是集成以上功能的,安装完成即可使用。

先大概了解一下吧:1. XAMPPXAMPP是一款比较强大的本地测试平台,它集成了必须的三个功能,还带有FileZilla,软件带有一个控制面板,在里面可以把Apache、MySql和FileZilla三者注册为系统服务或者卸载服务,有服务启动的控制按钮,而且在窗口下部还能看到服务的运行信息。

虽说面板是英文的,但清楚易懂。

注册为系统服务有个好处就是开机能够自动运行,但是会消耗一定的系统资源,怎么取舍用户自己来定。

安装成功,服务也启动成功后,就可以把浏览器打开输入http://localhost/,试试是否成功。

在XAMPP的网页选项里,有中文支持。

2. WampServer它的官方网站没有中文,但是程序支持中文。

在IIS布置PHP环境图文教程

在IIS布置PHP环境图文教程

在IIS布置PHP环境图文教程1PHP环境搭建1.1IIS1.打开[开始]菜单->控制面板,选择[程序与功能]选项。

2.打开窗口,选择[打开或关闭windows功能],等待菜单读取(如图1-1)。

3.勾选[Internet信息服务]下除[FTP服务器]以外的所有选项,点击[确定],等待系统结束安装过程(如图1-2)。

4.重新打开[控制面板],选择[管理工具],点击打开[Internet 信息服务(IIS)管理器],出现下图窗口IIS安装成功(如图1-3)。

1.2PHPManagerForIIS1.位置EPD_ElpSim_MSP\Trunk\Project\03.Study\工具【PHPManagerForIIS-1.1.2-x86.msi】2.双击PHPManagerForIIS-1.1.2-x86.msi文件3.安装准备完成后,出现安装窗口(如图2-1),点击[Next>]进入下一步;4.出现用户协议(如图2-2),选择[I Agree],点击[Next>]进入下一步;5.显示安装进度(如图2-3),等待安装完成;6.安装完成(如图2-4),点击[Close]结束安装。

7.打开[Internet 信息服务(IIS)管理器],看到PHPManager选项(如图2-5),安装成功。

1.3PHP1.3.1安装1.位置EPD_ElpSim_MSP\Trunk\Project\03.Study\工具【php-5.4.10-Win32-VC9-x86.zip】2.解压压缩文件[php-5.4.10-Win32-VC9-x86.zip]到指定目录(如D:\Program Files\php目录),完成安装。

1.3.2配置1.打开[Internet 信息服务(IIS)管理器];2.选择PHPManager选项(如图3-1),点击打开PHPManager选项3.出现PHPManager配置窗口(如图3-2),点击Register new PHP Version链接;(如D:\Program Files\php\php-cgi.exe),点击确定;5.如出现PHP版本信息且各链接项可用(如图3-4),测PHP配置成功。

WindowsServer2019IIS10.0+PHP(FastCGI)+MySQL环境搭建教程

WindowsServer2019IIS10.0+PHP(FastCGI)+MySQL环境搭建教程

WindowsServer2019IIS10.0+PHP(FastCGI)+MySQL环境搭建教程准备篇⼀、环境说明:操作系统:Windows Server 2019PHP版本:php 7.3.11MySQL版本:MySQL 8.0.18.0⼆、相关软件下载:1、PHP下载地址:2、MySQL下载地址:3、Visual C++ Redistributable for Visual Studio 2015(安装PHP、MySQL需要此插件)4、Microsoft URL 重写模块 2.0下载地址(IIS伪静态需要此插件)安装篇⼀、安装IIS10.0控制⾯板-系统和安全-管理⼯具服务器管理器添加⾓⾊和功能下⼀步选择:基于⾓⾊或基于功能的安装下⼀步选择:从服务器池中选择服务器下⼀步选择:Web服务器(IIS)添加功能下⼀步下⼀步下⼀步确保CGI被选中,其他的⾓⾊服务根据需要选择,如果不知道如何选择,建议选择全部功能。

下⼀步安装显⽰安装成功,点关闭。

可以看到⾓⾊和服务器组中已经有了IISIIS10.0已经安装完成。

⼆、安装PHP1、Visual C++ Redistributable for Visual Studio 2017 (x86、x64)安装x86安装x64全部安装完成后,点关闭。

2、安装php-7.3.11-nts-Win32-VC15-x64.zip解压php-7.3.11-nts-Win32-VC15-x64.zip⽂件重命名⽂件夹为php73,把php73⽂件夹拷贝到C盘根⽬录打开C:\php复制php.ini-production为php.ini⽤记事本打开php.ini做如下添加修改:extension_dir = "C:\php73\ext" #设置php模块路径date.timezone = PRC #设置时区为中国时区cgi.force_redirect = 0 #开启以CGI⽅式运⾏phpfastcgi.impersonate = 1;cgi.rfc2616_headers = 1以下php扩展模块,根据需要选择开启,取消前⾯的分号为开始相应扩展模块extension=curlextension=gd2extension=mbstringextension=exifextension=mysqliextension=socketsextension=php_xmlrpcextension=php_pdo_mysql修改完成后,保存退出3、配置IIS⽀持PHP打开控制⾯板-系统和安全-管理⼯具打开服务器管理器双击左边“起始页”下⾯的计算机名称找到中间的IIS部分,打开“处理程序映射”。

【推荐下载】iis以fastcgi配置php时出现FastCGI进程意外退出问题解决

【推荐下载】iis以fastcgi配置php时出现FastCGI进程意外退出问题解决

iis 以fastcgi 配置php 时出现FastCGI 进程意外退出问题解决2018/06/09 3 很多人在配置iis7+fastcgi+php 时出现了500 错误FastCGI 进程
意外退出同时php-cgi.exe 进程崩溃。

如图
这个问题一般都是php 配置出了问题导致的。

解决方法一般都是先将php 程序目录放进系统path 变量中,右键计算机-》属性
-》高级系统设置-》环境变量,设置path 路径,增加PHP 所在目录,这样可以在不
用iis 的情况下使用php -v 的命令来检查php 的配置情况。

例如:php.ini 中我把extension_dir 属性的路径写错了。

在命令行中输入php -v
就会有以下显示(点击放大)
php 不能加载扩展库文件,当然会报错了。

我配置的时候是出现如下问题:
查阅了网上的很多种方法,大都是说没有安装vc++2015 ,结果我试了之后还是
报错。

又经过一番搜索,最终找出了真正影响的原因:那就是缺少了
.Framework 的安装。

现将整个流程整理如下:
1.去微软官网下载.Framework 4.6.1
——其适用于Windows 7 SP1、Windows 8、Windows 8.1、Windows 10、Windows Server 2008 R2 SP1、Windows Server 2012 和Windows Server 2012 R2 操。

Windows 2003平台搭建IIS6+php+Mysql+Zend+phpmyadmin环境

Windows 2003平台搭建IIS6+php+Mysql+Zend+phpmyadmin环境

Windows 2003平台搭建IIS6+php+Mysql+Zend+phpmyadmin环境windows, lamp, 配置, windows, lamp, 配置本教程通过详细图文介绍在Windows 2003 平台上基于IIS6.0搭建最新的php5+Mysql5+Zend+phpMyaAdmin WEB运行环境。

一、安装准备1.系统准备已安装完成windows 20003及IIS6.0的配置,这里默认系统安装盘为C盘。

2.软件准备PHP:PHP v5.2.5 (下载地址:/downloads.php)Mysql:MySQL v5.0.51a (下载地址:/downloads/mysql/5.0.html) Zend:Zend Optimizer V3.3.0a(下载地址:/soft/32228.htm) phpmyadmin:phpMyAdmin V3.0.0.0 RC1(下载地址:/soft/2616.html)3.安装目录一般都存放于系统盘C盘下,但考虑如经常重装系统等因素,这里以D:\php\为安装目录,在D盘下新建php文件夹。

二、安装PHP1.将下载的php_5.2.5_win32.rar解压,将php-5.2.5-Win32文件夹重命名为php5,然后将其全部移动到D:\php\下,这样得到php文件的存放目录D:\php\php5。

2.将D:\php\php5下的所有dll文件拷到C:\Windows\system32下,覆盖已有的dll文件;3.将D:\php\php.ini-dist 复制到C:\Windows并将改名为php.ini,然后用记事本打开,利用记事本的查找功能搜索:register_globals = Off将Off改为On,这样即开启了PHP的全局变量功能。

(注:考虑不少PHP程序需要全局变量功能,故此配置)图片1同样查找extension_dir = "./"将其修改为:extension_dir = "D:/php/php5/ext/" (注:这里是配置PHP扩展功能目录);upload_tmp_dir =将该行的注释符,即前面的分号“;”去掉,修改为:upload_tmp_dir = "D:/php/tmp" 于此对应请在D:\php下建立文件夹并命名为tmp,这样就配置好了上传文件存放的临时路径,这个目录需要有读写权限。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

很多人都在Windows平台用IIS来跑PHP环境。

如果在网络上检索一下的话,就会发现,目前IIS+PHP环境有3种方法。

1、CGI方式加载PHP环境,通常就是IIS里面配置解释器为php.exe,早期比较常见,目前使用较少。

特点是:稳定,但效率太低。

2、ISAPI方式加载PHP环境,通常就是IIS里面配置解释器为php5isapi.dll,目前使用最多,应用最广。

特点是:多线程,效率较高,但不够稳定。

3、FastCGI方式加载PHP环境,在IIS环境里并不常见,但其它系统环境应用还是有的,不过IIS7.0开始内置FastCGI了。

特点是:高效率,高稳定性,属于将来发展趋势。

今天我给大家介绍的是第三种,也就是最不常见的IIS6.0以FastCGI模式加载php环境。

据说相同配置下FastCGI方式加载PHP比ISAPI方式加载PHP性能提高很多,今天我的重点就放在IIS6.0以FastCGI模式加载php环境的测试,看看究竟性能是不是提升了。

当然我的理由也很充分,我没有足够好的服务器,所以我要榨干服务器的资源,如果确实FastCGI的性能更好,那我就赚了:)什么是FastCGIFastCGI是语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。

众所周知,CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性、Fail-Over特性等等。

FastCGI的工作原理是1、Web Server 启动时载入FastCGI进程管理器(IIS ISAPI或Apache Module)。

2、FastCGI进程管理器自身初始化,启动多个CGI解释器进程(在任务管理器中可见多个php-cgi.exe)并等待来自Web Server的连接。

3、当客户端请求到达Web Server时,FastCGI进程管理器选择并连接到一个CGI解释器。

Web server将CGI环境变量和标准输入发送到FastCGI子进程php-cgi.exe。

4、FastCGI子进程完成处理后将标准输出和错误信息从同一连接返回Web Server。

当FastCGI子进程关闭连接时,请求便告处理完成。

FastCGI子进程接着等待并处理来自FastCGI进程管理器(运行在WebServer中)的下一个连接。

在正常的CGI模式中,php-cgi.exe在此便退出了。

在上述情况中,你可以想象CGI通常有多慢。

每一个Web请求PHP都必须重新解析php.ini、重新载入全部dll扩展并重初始化全部数据结构。

使用FastCGI,所有这些都只在进程启动时发生一次。

一个额外的好处是,持续数据库连接(Persistent database connection)可以工作。

按补天大鱼的话说:因为进程在创建的时候CPU时间片、内存调度、IO访问消耗最多,所以FastCGI类似于常用的池技术。

即预先创建好进程,等待请求。

执行完成后,进程并不结束,而是返回池中。

不过,按道理,这些进程执行到一定次数后,也会全部销毁再重新建立一次。

一、IIS6.0以isapi方式加载php环境并测试我准备了一个phpinfo的页面,保存成abu.php<php?phpinfo();?>注意看我标注出来的,Server API ISAPI表明目前服务器是IIS+ISAPI方式加载的PHP环境。

下面进行最简单的压力测试:我用apache里面内置的ab.exe进行最简单的压力测试:ab -n 1000 -c 20 http://192.168.0.6/abu.php这句话的意思是模拟出总共1000个网站请求,并发20个请求,访问服务器http://192.168.0.6/abu.php 页面如下图:点击可以看到大图这是我在服务器上的截图,注意,我们可以发现,服务器的CPU已经窜至80%左右。

我本机完整的记录见下面:C:\>ab -n 1000 -c 20 http://192.168.0.6/abu.phpThis is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0 Copyright 1996 Adam Twiss, Zeus Technology Ltd, / Copyright 2006 The Apache Software Foundation, / Benchmarking 192.168.0.6 (be patient)Completed 100 requestsCompleted 200 requestsCompleted 300 requestsCompleted 400 requestsCompleted 500 requestsCompleted 600 requestsCompleted 700 requestsCompleted 800 requestsCompleted 900 requestsFinished 1000 requestsServer Software: Microsoft-IIS/6.0Server Hostname: 192.168.0.6Server Port: 80Document Path: /abu.phpDocument Length: 46499 bytesConcurrency Level: 20Time taken for tests: 52.46875 secondsComplete requests: 1000Failed requests: 10(Connect: 0, Length: 10, Exceptions: 0)Write errors: 0Total transferred: 46673950 bytesHTML transferred: 46498950 bytesRequests per second: 19.21 [#/sec] (mean)Time per request: 1040.938 [ms] (mean)Time per request: 52.047 [ms] (mean, across all concurrent requests) Transfer rate: 875.75 [Kbytes/sec] receivedConnection Times (ms)min mean[+/-sd] median maxConnect: 0 7 94.7 0 2984Processing: 531 1020 528.3 813 3953Waiting: 15 346 281.6 312 3656Total: 531 1028 536.5 828 3968Percentage of the requests served within a certain time (ms)50% 82866% 85975% 92180% 103190% 181295% 189098% 381299% 3937100% 3968 (longest request)好的,下面开始第二个阶段,换FastCGI二、IIS6.0以FastCGI方式加载php环境并测试IIS下可用的FastCGI扩展有很多种,我在这里给大家演示的是微软官方发布的扩展。

【下载】FastCGI Extension for IIS 6.0/5.1 微软官方发布的扩展,让IIS支持FastCGI 安装之后,默认是安装到%WINDIR%\system32\inetsrv路径下,当然直接拆出来用也可以。

没有图形界面,可以直接写配置文件或者通过官方配的fcgiconfig.js文件进行配置。

具体配置文件大家自己去挖掘研究了,我水平有限怕误导大家,故不提供了。

小插曲:在配置的过程中,还遇到了权限方面的小问题,还好我及时用Filemon找到问题所在。

看到了吧,php-cgi.exe权限缺了一点。

具体配置方面不是本文重点,不详细描述了。

好了,FastCGI模式配置好了。

注意Server API CGI/FastCGI表明成功加载PHP环境。

还是用上面的方法进行简单的压力测试ab -n 1000 -c 20 http://192.168.0.6/abu.php模拟出总共1000个网站请求,并发20个请求,访问服务器http://192.168.0.6/abu.php 页面如下图:点击可以看到大图注意看CPU消耗小了很多,为了确保数据相对准确,隔了一会儿又再次做了两次测试这是我在服务器上的截图,我们可以发现,基本上CPU的消耗在30-40%左右。

我本机完整的记录见下面:C:\>ab -n 1000 -c 20http://192.168.0.6/abu.phpThis is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0 Copyright 1996 Adam Twiss, Zeus Technology Ltd,/ Copyright 2006 The Apache Software Foundation,/ Benchmarking 192.168.0.6 (be patient)Completed 100 requestsCompleted 200 requestsCompleted 300 requestsCompleted 400 requestsCompleted 500 requestsCompleted 600 requestsCompleted 700 requestsCompleted 800 requestsCompleted 900 requestsFinished 1000 requestsServer Software: Microsoft-IIS/6.0Server Hostname: 192.168.0.6Server Port: 80Document Path: /abu.phpDocument Length: 52903 bytesConcurrency Level: 20Time taken for tests: 55.234375 secondsComplete requests: 1000Failed requests: 0Write errors: 0Total transferred: 53101000 bytesHTML transferred: 52903000 bytesRequests per second: 18.10 [#/sec] (mean)Time per request: 1104.688 [ms] (mean)Time per request: 55.234 [ms] (mean, across all concurrent requests) Transfer rate: 938.84 [Kbytes/sec] receivedConnection Times (ms)min mean[+/-sd] median maxConnect: 0 6 17.3 0 453Processing: 500 1088 143.9 1062 1796Waiting: 46 246 98.0 218 734Total: 500 1095 145.1 1062 1796Percentage of the requests served within a certain time (ms)50% 106266% 107875% 109380% 110990% 115695% 142198% 168799% 1718100% 1796 (longest request)三、ISAPI和FastCGI两种模式对比测试的结果根据上面的简单测试,我们可以发现,相同硬件环境下,FastCGI方式加载PHP环境比ISAPI 方式加载PHP性能提高约1倍。

相关文档
最新文档