IIS6+FastCGI+php5.3.13+moodle2.2.3 安装
本打算用apache 可是,php 5.3.13 只提供v9版下载,只好放弃,而选用以前根本没碰过的 iis 安装。
经过近一天的奋战终于全部搞定。
fastcgi+php5.3 的安装,下面这篇文章讲的确实很详细。(http://www.2cto.com/os/201110/106895.html)
步骤摘录一下:
第一步:PHP配置
1、 解压php-5.3.2-nts-Win32-VC9-x86.zip至安装目录
2、打开php-5.3.2- nts-Win32-VC9-x86,建立php.ini文件,复制一个新的php.ini-development文件,并将文件名改为 phi.ini。
3、打开php.ini文件,修 改extension_dir的值,值为你的php安装目录
4、修改data.timezone 的值,据说不设置,中文版会出问题,未验证。
5、选择启用所需模块:将用到的模块前 的;去掉,注意启用php_exif.dll时,必需将其放在mbstring后面,即将php_exif.dll剪切到 php_mbstring.dll后面。
6、配置FastCGI模式时,将 cgi.force_redirect设置为0,将cgi.rfc2616_headers和fastcgi.impersonate设置为1。
7、使用iProber探针来检测php环境时,必须开启short_open_tag = On,否则,会出现“iProber.php on line 910”错误。
第二步:配置IIS的FastCGI模块
1、为IIS增加FastCGI模块有两种方式,一种是直接下载FastCGI Extension文件,另一种是使用微软的“web平台安装程序”。地址
http://www.iis.net/downloads/default.aspx?tabid=34&i=1877&g=6
2、 在IIS服务里面进行配置,在IIS里右击“网站”节点,然后单击属性,弹出属性对话框。
3、单击“主目录”选项卡,然后单击“配置”按钮
4、单击添加,添加一个新的ISAPI项
5、可执行文件选 C:\window\system32\inetsrv目录下,选中fcgiext.dll,扩展名 .php
6、在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
7、php 配置完成,重启iis ,放置一个测试页面到你的网站进行测试。
第三步:安装Moodle 2.2.3+
1、下载合适moodle 版本,并在下载时认真阅读改版本所需要的配置。如2.2+ 就需要php 5.3.2+,mysql 5.0.25+
2、解压后将moodle 文件夹复制到其文件夹下
3、打开浏览器 输入,localhost:80/moodle 出现安装环境监测页面。
4、监测发现需要 开启 soap,zip,intl,openssl 等模块
修改php.ini 后发现出错,原来这些模块有依赖的模块,需一并加进去。具体有:
intl 需要icudt**.dll模块,我下的版本是icudt46.dll,在php 根目录下,将其复制到ext 目录下,还无效可复制到system32下
openssl 需要 ssleay32.dll,libeay32.dll模块,同样复制到相应的目录下。(未验证,但复制后是成功了)
5、所有环境配置成功后开始安装。总是安装失败,原因都是请求超时。
php.ini 中 max_execution_time = 30 改长一点,如300;
fcgiext.ini 底部追加
InstanceMaxRequests=10000
EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000
RequestTimeout=500
ActivityTimeout=900
6、重启IIS后,重新安装,进过几分钟的等待后终于安装成功。