1:Apache for Windows
选择apache_2.2.14-win32-x86-no_ssl.msi的Apache for Windows版本。安装路径为:C:\Apache2
服务器的web的根目录是 “C:/Apache2/htdocs/”;
httpd.conf是Apache的配置文件,以后会经常修改。该文件修改完毕后必须重新启动Apache服务,配置才能生效。这一点必须特别注意。
在httpd.conf以下代码的DirectoryIndex后加index.php,多个首页文件用逗号隔开:
<IfModule dir_module>
DirectoryIndex index.html, index.php
</IfModule>
DocumentRoot "D:/Program Files/Apache Software Foundation/Apache2.2/htdocs/ridish"
2:PHP安装和配置
我们选用php-5.2.12-Win32.zip版本。解压到以下文件夹下即可:
C:\php5
2.1: PHP需要的配置:
PHP的配置通过编辑php.ini来完成。第一次,我们复制
C:\php5
下的php.ini-recommended文件生成一个php.ini文件,然后指定extension_dir路径:
extension_dir = "C:\php5\ext"
再打开以下语句的注释,用于让ZF支持mySQL数据库:
extension=php_pdo.dll 打开 pdo
extension=php_pdo_mssql.dll 打开 pdo_mssql
为了PHP支持更多扩展,可以把它们的注释去掉,例如为了支持图形功能,可以打开
extension=php_gd2.dll
顺便注意一下,为了安全,register_globals = Off,默认已经是关闭的了。我们自己开发的PHP扩展也可以拷贝到ext 文件夹下,用extension=myphp_ext.dll的形式调用。
3: Zend Framework:
取得ZendFramework-1.9.7.zip压缩包,解压取出里面的library文件夹的内容
4: PHP与Apache、msSQL的集成
在 http.conf 文件最后加语句:[code]
#集成 PHP5
LoadModule php5_module "C:\php5\php5apache2_2.dll"
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
#(指定php.ini文件的位置)
PHPIniDir "C:\php5\php-5.2.5.bin"
[/code] 如果是 PHP6,则形如:
LoadModule php6_module "……\php6apache2_2.dll"
注意以上装载模块语句LoadModule必须加载与当前PHP和Apache版本对应的dll文件。配置错了是不能工作的。
再次注意:保存http.conf文件后必须重新启动Apache服务,配置才能生效。
5: ZF框架的设计思想和策略
ZF采用了前端控制器(Front Controller)设计模式,它把所有用户的请求发送到一个中心控制点,具体做法就是所有的请求都需要通过index.php进入。然后通过index.php中的脚本把用户请求分发到对应的控制器中,控制器负责调用模型中的逻辑和用户界面的呈现。
2,Apache对ZF的支持
为了实现ZF的设计思想,需要Web服务器的支持。Apache服务器是通过其mod_rewrite功能来实现的。
2.1配置mod_rewrite扩展需要去掉Apache的配置文件httpd.conf中以下语句前的注释符号#,使配置生效,即装载mod_rewrite.so模块。
LoadModule rewrite_module modules/mod_rewrite.so
还必须保证Apache已配置成支持.htaccess文件的模式。通常这可以通过在httpd.conf中将[code]
<Directory "C:\Apache2\htdocs">
Options Indexes FollowSymLinks
#AllowOverride None
AllowOverride All
Order allow,deny
Allow from all
</Directory>中的AllowOverride None改成AllowOverride All来实现。如果没有正确配置mod_rewrite及.htaccess,那么除了首页外将不能看到任何其它的页面。
如果没有什么遗漏的话,应该可以正常解析了。不过还有一点要提一下,就是php5的短标记是关闭的,通常要打开(因为还是有相当一部分的代码采用这种写法),在php.ini中将short_open_tag = off改为on即可。还有全局变量的开关,自己搞掂吧。
保存配置,重启Apache服务,使配置生效。