HP5.3.0篇:IIS6上安装MySQL5.1.38,PHP5.3,Zend3.3,phpMyAdmin3.2.2的完整方法
在IIS6.0下安装Fastcgi+PHP来运行PHP程序(未装alpha),终于实现手工配置 IIS 6 下以 FastCGI 跑 PHP
PS:微软提升PHP在IIS下的性能 FastCGI Extension for IIS6.0
微软已经和PHP社区共同努力了一年之久,他们终于研发出能让IIS更快地解析PHP的方法,用户们甚至不需要做基准测试就可以明显感觉到PHP解析速度加快.早在2006年,微软就和Zend等厂商一起研发 Windows Server下的优化工作,IIS产品组已经公布了IIS6和7的FastCGI扩展,它能让PHP执行效率更高. PHP一直以来是IIS的尴尬,用PHP扩展的速度跟不上其它服务端(甚至还有一些致命问题例如在某内存地址报错),而PHP又比ASP.net普及得多,因此微软需要在IIS+PHP上突破市场. 微软去年底发布了ii6的fastcgi模块,可以免费下载,使用IIS6的您不妨在您的测试环境上试一下,没准会有惊喜哦! 今天将服务器上的php支持改成了fastcgi,目前运行稳定.fastcgi的iis模块可以让流行的应用框架在iis上支持fastcgi协议以提供高性能和可用性的访问服务,fastcgi面向现有的网络服务器提供高性能的cgi替代标准。具体php安装方法我记录下来,其中包括出现的错误.
1.下载 FastCGI For IIS6 
fcgisetup32.msi(FastCGI Extension for IIS 6.0 x86)( M3 h# K" b" }8 c1 ^
下载:http://www.iis.net/extensions/FastCGI,选择: x86

或者直接下载:http://go.microsoft.com/?linkid=9655696

下载之后,双击运行进行安装。8 k9 R5 ^$ S8 D! j7 z" w7 `8 b
(FakeCGI调试工具(备用):下载fake.zip http://blogs.iis.net/rickjames/attachment/1563148.ashx )4 s# T: ~* F3 W% U' r5 C

安装后在 C:\WINDOWS\system32\inetsrv 目录下产生了五个文件。如下图:9 e0 G9 a7 {: C% Z+ N
! ]: }# J% W& K9 s4 i* Q
 
/ d9 I1 }9 q: D
同时在 IIS 的 “Web 服务扩展”里多了 FastCGI Handler。% b& S2 y# z  ?! v2 ^+ Y
+ S1 W, G! r2 C2 ^

( s9 ~" B' u+ x6 K+ n3 r4 Y4 Z/ |' O
2.下载 PHP5.3.0 Windows 版5 m: Y7 M, J4 n/ A
由于PHP5.3的全新特效及改进,原有的isapi方式解析PHP脚本已经不被支持,PHP从5.3.0以后的版本开始使用微软的fastcgi模式,这是一个更先进的方式,运行速度更快,更稳定!
新版本的PHP5.3通过以往老方法已经不能在IIS上安装了,下载IIS下的PHP,下载地址http://windows.php.net/download/,(注意IIS下要选择VC9的版本)解压到所需目录,该目录需要给予user读取运行权限,; d. |; k  r0 ], v; r7 e
选择:PHP 5.3 (5.3.0)' U% d9 ~; n2 @
VC9 x86 Thread Safe (2009-Jun-30 08:52:56) Zip [13.54MB]
sha1: f049c806744855e4420844d47e051949fcf06661# {. c. s* S$ ~; v  g+ ^9 T) T! U
下载 .zip 格式的版本,解压缩下载的 php-5.3.0-Win32-VC9-x86.zip 文件,并将其复制到:X:\Server_Core\php目录(你可以根据自己的意愿解压到别的目录。),并给 IIS 启动帐户组或用户赋予读取和运行权限。如下图:+ l, f8 A; C, b( M% }9 v5 A
0 X6 b! ~* C: b
8 O. I$ H2 M* ^. K4 i2 M
3. 注册 PHP 到 FastCGI 
. B8 C  ~  v, z8 c9 Z" X
打开 C:\WINDOWS\system32\inetsrv\fcgiext.ini 文件。5 W8 p: e  I" E. Q
; This is the configuration file for the FastCGI handler for IIS 6.0.
; The FastCGI handler will look for this file in the same directory as0 p! u% `- ?  f  n; k8 g
; fcgiext.dll. By default, the FastCGI installer will place this file into
; the %windir%\system32\inetsrv directory. 
6 p5 `; J% ?3 g% I- ]$ S$ y
我个人的理解是,只要“Web 服务扩展”里的 FastCGI Handler 为允许时,在加载 fcgiext.dll 时,会读取 fcgiext.ini 配置文件的内容,根据里面的配置为每个网站提供映射。

在 [Types] 下添加以下配置: , w7 h& \( K& t8 b* o
[Types]
. }6 X+ Z; r, c# P; |
php=PHP
[PHP]) l: r( ], ^# [6 X
ExePath=X:\Server_Core\PHP\php-cgi.exe
这里要用:“\”不能用“/”,“php”表示扩展名,“PHP”是配置节名称,以“[PHP]”定义。 (选你自己的安装的目录,下同。)

4. 配置 php.ini 8 ^, n7 L4 Z5 r
将 X:\Server_Core\PHP\php.ini-development 复制一个,然后重命名为 X:\Server_Core\PHP\php.ini ( n5 a; `' Z% }
找到PHP安装目录下的php.ini-development并改名为php.ini文件,找到下面
[Date]: o+ b8 w; M! t5 o& D2 P* I$ X
; Defines the default timezone used by the date functions8 ?" N. y$ b6 S/ i
; http://php.net/date.timezone- U, P. M4 E; f" C. `4 O
; date.timezone =
更改为并去除前面的“;”: 
[Date]
; Defines the default timezone used by the date functions& E5 D+ C# y2 b! o" t3 _0 F8 E3 `
; http://php.net/date.timezone. ?) t- m4 Y+ j9 e
date.timezone = Asia/Shanghai
如果不改以上的date.timezone可能打开网页会提示500错误" a- a5 G7 C! E2 ?
找到
; On windows:* U1 L" d8 ~9 P3 d, {5 i! C
; extension_dir = "ext"/ O) T+ @; [& d5 _; X* T* S8 S
改为% u( Z3 _* S$ m4 t
; On windows:, Q% l* D6 ~9 Z
extension_dir = "X:\Server_Core\PHP\ext"

找到:fastcgi.impersonate = 1;这句,把前面的;去掉, fastcgi.impersonate = 1 ( o  q9 T1 q# K  J5 f
如下图:

$ N0 y" V5 x/ l
找到:short_open_tag= Off;改为1 [  W! d. J; q7 P3 V; F
short_open_tag= On* |, Y! p2 _9 U7 B

至于php.ini里面的extension开启方式,根据自己所需,找到:Windows Extensions 在 Windows Extensions 下方的动态模块配置中,需要打开以下模块支持:(去掉模块配置每行前面的;号即可)比如我的是
;extension=php_bz2.dll& y4 ?/ o0 H& h' a% G; }
;extension=php_curl.dll
;extension=php_dba.dll
extension=php_mbstring.dll' C6 K; Z- j8 S2 f9 ~; C0 P
extension=php_exif.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll) U* o: r5 m# p' y2 ]1 p2 s
;extension=php_gettext.dll) g. V  D- N, M" C8 P1 ^$ x
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
extension=php_ldap.dll
;extension=php_ming.dll
;extension=php_mssql.dll
extension=php_mysql.dll6 Q( p+ k3 S1 \/ A; k
extension=php_mysqli.dll
;extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
;extension=php_oci8_11g.dll ; Use with Oracle 11g Instant Client
;extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll8 m. A& A4 |$ Z. ^& h5 a# f
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll2 R9 n% j- _5 g3 Z3 ~5 d
;extension=php_pdo_pgsql.dll
;extension=php_pdo_sqlite.dll( l; W7 X  k! Q: m; M. Y
;extension=php_pgsql.dll
;extension=php_phar.dll
;extension=php_pspell.dll
;extension=php_shmop.dll- x" `- _& U& u# s& l
;extension=php_snmp.dll
;extension=php_soap.dll5 b& Q' y5 g  Q# c0 n7 j
;extension=php_sockets.dll2 e) E( X" F) z; ]4 Y% q
;extension=php_sqlite.dll
;extension=php_sqlite3.dll  B( _- Z: s; f8 c- \
;extension=php_sybase_ct.dll' E2 F  M5 M6 r2 q
;extension=php_tidy.dll
;extension=php_xmlrpc.dll# C; t' a  B$ J( C& a3 c4 p* `
;extension=php_xsl.dll3 Z& K, S$ `) h0 _( n9 w
;extension=php_zip.dll2 R3 p* C! Z- }& l& c
注意最后一个php_zip.dll这个在我下载下来的php5.3.0的ext内是不存在的,所以如果开启会报错误,如果实在需要这个DLL,可以从PHP5.2中拷贝过去(我的不行)
保存 php.ini 文件,并将其复制到 C:\Windows\ ,并删除 X:\Server_Core\PHP\php.ini,不删除有时IIS报500错!, n6 o. Z8 y) \* v1 M6 R2 `
' h5 a0 ]6 X) k1 f, ^

5. 配置网站

打开IIS管理器,网站上点右键-属性-主目录-配置-添加,配置如下图9 _" ~0 O$ j# v8 P1 k2 n

$ A' P$ z; y7 k( E& |( P
. H. {) v2 r/ n- h

可执行文件路径:C:\WINDOWS\system32\inetsrv\fcgiext.dll

6. 写个 php 测试下吧   w' t6 H& W( R: U' I

修改完在IIS上或者命令提示符运行iisreset命令重启IIS服务,这步很重要!) ]; w/ l, H* K
, p( q$ c  V8 V% b2 X1 M' x& Y

+ M0 j/ m7 J% `) U
测试是否安装成功!
建立一个网站,phpinfo.php文件内容为:" j/ V* w! h% c0 N' m9 R$ V9 j) w& s
文件:phpinfo.php
<?php0 u" Y6 T0 n5 g/ E- f5 t& p/ @
phpinfo();
?> 4 g! A  l$ L$ `
- a! i  j( N+ V" R# i2 Q
看到类似以下效果说明你的服务器可以跑 php 了。
- @4 N- u. I1 ?  O* l( H0 b
安装过程出现小插曲,如果运行测试文件出现如下提示:; a% J' s- c* u9 u& i; O$ L
先运行X:\Server_Core\PHP\php-cgi.exe如果能进入命令窗口并只有光标,说明FastCGI能正常调用php-cgi,再找以下错误解决方法:! \6 |( B* m" e- s# G3 \/ ]
错误1,8 `0 i+ j1 g6 N% z  w
fastcgi error  ~. n! R1 {2 l- o) v* c+ v
the fastcgi handler was unable to process the request. 
--------------------------------------------------------------------------------
error details:( m" m& o& Y- z- G7 f( c. i: n: Z
error number: 5 (0x80070005). 
error description: 拒绝访问。 + ^0 c3 \5 n( D! ]. f
http error 500 - server error.
internet information services (iis)" ~$ V# P7 K2 i
这个错误是由于在解压php之后,没有对iis启动帐户赋予该目录的读取和运行权限.修改文件夹安全属性,问题解决.
5 _7 V$ e9 d3 P7 C' T
错误2,% ^* }. u3 s. l+ L2 i' a. {
FastCGI Error! W# ^5 P9 c/ \) U- _! x
The FastCGI Handler was unable to process the request. 
--------------------------------------------------------------------------------" s% v: S, v: B& ?, A( ]
Error Details:
Could not find entry for "php" on site 1960240566 in [Types] section. 1 D- M/ R5 ^( E! M. Z* j$ f* O
Error Number1413 (0x80070585). 
Error Description: ?TD§?÷òy?£ 5 P& X; K7 `( c$ O5 G
HTTP Error 500 - Server Error.; h4 H% ~7 r( v/ m4 W5 X# c
Internet Information Services (IIS) 9 a4 _8 }. q# c: W/ [) [* A

即说明没有安装成功!请按照fcgiext.ini 修改配置即可!!# x' I2 ]- D* t5 y; c8 Y
错误3,1 I, B' [" m$ O% s% u
----------
FastCGI Error 
The FastCGI Handler was unable to process the request.   a4 M# @+ I$ B9 e7 K
Error Details:

  • The FastCGI process exited unexpectedly
  • Error Number: -1073741819 (0xc0000005).
  • Error Description: Unknown Error

HTTP Error 500 - Server Error.  c5 j3 P" Z; ]+ k3 W
Internet Information Services (IIS)
--------
我的PHP目录在C盘 1 \6 U3 G* B/ G# H; i& X9 g
当时配置PHP.INI的时候就在那个安装目录编辑好,再复制到windows目录下的...
结果恰恰是C:\PHP\php.ini 这个"备份"文件的存在 干扰了FastCGI的运行,总是提示我。$ Y# w. f7 b/ I7 b! U8 a
把 C:\php\php.ini 删除,搞定!5 z9 _$ p9 o4 y7 M! z( u
随后用FakeCGI调试工具才搞定原因..# Z8 w# O' w' Q, }5 ^3 V+ s
感谢FakeCGI,痛斥我的坏习惯!!!

, |4 H! c* R; R6 o/ _/ }
& B! w! ^2 Q9 o" B* Z" H
PHP5.3.0特除配置
一,如何正确调整上传附件大小限制?; F( Y& v& y: ]+ Q* y! R" ]
修改 php.ini (Windows 系统在 C:/Windows/system32 下)中的下面几项:7 P; \4 w. j# Z( R- I* f
1. post_max_size =10M  ; y0 n: O. U/ ]# R# ~6 T
表单提交最大数据为10M.此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的.
限制范围包括表单提交的所有内容.例如:发表贴子时,贴子标题,内容,附件等...' F6 Z7 k4 W9 K" e! Q2 a
2.file_uploads = On   
是否允许上传文件,如果为OFF您将不能上传文件./ B! Y' n; ?+ [$ [3 W: [. z; a2 T
3.upload_tmp_dir = "C:\Server_Core\php\upload_tmp\"   
上传文件时系统使用的缓存目录.如果此目录所在磁盘空间不足的话您将不能上传文件.
4.upload_max_filesize =2M  5 ^# O; U- m# l8 D7 k7 I
最大上传文件大小,此项针对上传文件时单个文件的大小.+ `7 l! c( j- }# r* D6 N- O) e
与post_max_size之间的关系:
在论坛发表贴子时,您post_max_size 设为10M,而此项设成了2M,那么您只能上传最大为2M的附件,且可以同时上传5个.0 n6 ]1 s" G& x5 A- @9 \
修改之后一定要重启 Web 服务。1 _+ P! e3 ^* g5 b8 T- |2 i4 a
注意:很多人遇到修改php.ini后重应WEB服务后仍然不能生效.这种情况应该先确认一下所改的php.ini是不是当前PHP所使用的.
二,EXIF信息服务器配置说明:
1.在php.ini文件中找到;extension=php_exif.dll,去掉前面的分号( d5 ], N& k* o9 Y  f
2.在php.ini文件中找到;extension=php_mbstring.dll,去掉前面的分号,并将此行移动到extension=php_exif.dll之前( P& X6 ]; I2 d1 y4 U  U
3.找到[exif]段,把下面语句的分号去掉。  f8 Q' P$ _8 h' q9 q
;exif.encode_unicode = ISO-8859-15
;exif.decode_unicode_motorola = UCS-2BE% r5 p! Z, }: c6 `8 P8 b
;exif.decode_unicode_intel    = UCS-2LE
;exif.encode_jis = % F0 C- O8 ~( V+ `
;exif.decode_jis_motorola = JIS
;exif.decode_jis_intel    = JIS* V9 Y, w$ o: l7 T8 V
PS:$ q( o3 V! x$ U+ |, M4 ^
安装版PHP的方法: : y* |6 L+ Q7 Y
点击NEXT+ G, Y( }2 r& l  _7 L: n

打上勾同意9 }& E4 c3 W6 X
, j; l+ g' n$ [: |
出现安装路径,默认路径,点击"Next"

在这里选择:IIS FastCGI,再点击Next$ ^) q2 o! T- j9 W0 X. Q& s
$ D4 j- O/ U) s; H4 m9 ?
然后在模块里选上
mysql
GD2
Multibyte String" Y: G0 p4 T" v4 J' V
mcrypt9 Z* ~, H4 f# z. u9 E7 z# ~
之后点击"Next",安装成功!

摘自:http://dimin831026.blog.sohu.com/170346675.html

PHP for windows iis6配置相关推荐

  1. win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3)

    win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3) 直入正题. 这个环境的部署很有讲究,折腾了一天,大概说一下思路: 自 ...

  2. 在 IIS6 配置使用php的fastcgi模式

    今天搭建网站的时候,需要配置网站的php运行环境为fastcgi模式,以往的网站都是采用isapi模式搭建的,既然是第一次遇到这样的问题,肯定是能学到东西了,我就自己搭建了一下,没想到成功了,呵呵,现 ...

  3. php sendmail方法,PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法

    本文实例讲述了PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法.分享给大家供大家参考,具体如下: 1.php mail()函数在windows不能用,需要安装sen ...

  4. windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error...

    windows下配置redis集群,启动节点报错:createing server TCP listening socket *:7000:listen:Unknown error 学习了:https ...

  5. 在Windows中配置Rsync同步

    在Windows中配置Rsync同步 Rsync是一款不错的文件免费同步软件,可以镜像保存整个目录树和文件系统,同时保持原来文件的权限.时间.软硬链接.第一次同步时 rsync 会复制全部内容,下次只 ...

  6. windows 下配置 react native 开发环境

    windows 下配置 react native 开发环境 安装nvm 由于react native 需要使用 NodeJs 4.0以上版本,为了方便切换NodeJs,首先我们需要安装nvm. 你可以 ...

  7. windows 如何配置 Go 环境(Zip archive 方式)?

    windows 如何配置 Go 环境(Zip archive 方式)? 下载地址:https://dl.google.com/go/go1.12.5.windows-amd64.zip 解压 go1. ...

  8. Windows安装配置tidevice

    一直以来,iOS自动化的实现和执行都依赖Mac系统,其主要原因是因为需要通过Xcodebuild编译安装WDA (WebDriverAgent)到iOS设备中,通过WDA实现对被测应用进行操作.而Wi ...

  9. 笔记本出现此windows无线服务器,笔记本win7系统提示windows无法配置此无线连接怎么办...

    如今很多使用笔记本win7系统都自带有无线网卡,所以很多用户都喜欢使用功能无线网络进行连接,但是有不少笔记本win7系统用户反映说创建无线网络连接的时候出现了故障,提示windows无法配置此无线连接 ...

  10. Windows下配置Chrome WebDriver

    其实就是下载一个exe,放在chrome下面,添加到环境变量 Windows下配置Chrome WebDriver 下载地址,选版本: http://npm.taobao.org/mirrors/ch ...

最新文章

  1. Sublime P4语法高亮设置
  2. unicone 字体 规范
  3. Class.forName有什么作用
  4. wxWidgets:打印框架概述
  5. MFC中OnCtlColor的用法(改变控件颜色)
  6. 高并发大容量 NoSQL 解决方案探索
  7. Linq to Sql 聚合查询
  8. 计算机科学论文生成器,数学论文生成器:从此一天一篇不再愁
  9. Insyde uefi 隐藏设置_联想台式机10代cpu装win10及bios设置教程(新bios设置)
  10. c语言统计单词平均长度,C++ 字符数组 - 统计一段英文单词的平均长度
  11. python两个excel做匹配_python链接两张excel表格数据-如何用python从excel中同时提取两个列的数据,并生......
  12. ubuntu 安装idea,创建快捷方式
  13. 实现工地实名制门禁管理的人脸识别系统
  14. 大学计算机课程日记,大学计算机实习日记.docx
  15. opencv基于模板匹配的银行卡卡号识别项目实战
  16. 在不借助中间变量的前提下,交换两个变量的值
  17. 风格迁移 I2I 论文阅读笔记——U-GAT-IT,动漫风格生成
  18. 恒烁M0+系列CX32L003单片机及其GPIO的操作
  19. nyoj 301递推求值 (矩阵+快速幂)
  20. 苹果编辑器在哪_苹果 WWDC 2020 发布的ARKit 4 为何低调 ?

热门文章

  1. 基于matlab车牌识别算法
  2. html怎么写java代码_html中怎么写java代码
  3. 【Android】【移动应用开发】基础知识
  4. MySQL数据库基础教程索引
  5. 微信开发者工具的下载以及项目的创建
  6. python txt转Excel
  7. 用c语言编程图书管理系统,C语言图书管理系统简洁版
  8. bat命令快捷修改ip地址
  9. Linux下安装gcc报错的情况解决方案
  10. 中缀表达式转后缀表达式详解