从Apache2.0.54到Apache2.2.3


Written on 九月 7, 2006 – 1:21 下午 | by paopao

     机子上的Apache已经装了很长时间了,是2.0.54版的,安装配置好后就一直没去动它。昨天心血来潮去Apache主页上逛了一下,发现已经有Apache 2.2.3了。看了一下2.2版有不少新特性,不过对我比较有用的大概只有一个关于mod_rewrite的重要安全补丁,最近学习的Joomla正好使用了这个功能,所以决定升级一下。

Apache 2.2系列是一个新的stable brach,所以安装前先要卸载原来的2.0.54版,卸载之前我先备份了配置文件。

然后就是安装Apache 2.2.3,我安装到了原来那个目录下。安装完之后我先试着把2.0版的配置文件放到conf文件夹下,结果无法启动。看来是不能直接使用原来的httpd.conf文件。

我发现2.2.3版的conf文件夹下除了httpd.conf文件外还多了default和extra两个文件夹,仔细看看后才知道2.2版已经把httpd.conf文件拆分开来了,除了主要的配置信息还保留在httpd.conf外都分成了一个个httpd-xxx.conf放在extra文件夹下,然后在httpd.conf文件中通过include包含进来,这样提供了更多的选择性和便利性。

刚才无法启动Apache的主要原因应该是一些module load不正确,2.2和2.0的modules相差比较大,所以我就拿2.2.3的默认的httpd.conf参照2.0的来修改了,至于那些httpd-xxx.conf文件我按照自己的需求选择了一部分include了,不过要注意在httpd-xxx.conf文件中需求的modules必须在httpd.conf中load正确,否则也会无法启动。

经过一番折腾,配置文件都修改好了,Apache也正常启动了。打开opera测试一下,发现静态网页可以正常浏览,但是php文件都直接显示的源码。我明明load了php5_module了,Apache也可以启动了,其他相应设置也写了,奇怪。

上网google了一把,发现不是只有我有这个问题,原来PHP5压缩包里的php5apache2.dll只适用于apache2.0.*

解决方法:
下载http://www.apachelounge.com/download/mods/php5apache2.dll-php5.1.x.zip这个补丁并解压,共有三个文件:
vcredist_x86.exe
php5apache2.dll
httpd.exe.manifest

1.将php5apache2.dll拷贝到PHP5的根目录下覆盖原来的文件;
2.将httpd.exe.manifest文件复制到apache2.2.3安装目录下的bin文件夹下;
3.双击运行vcredist_x86.exe安装(如果系统里已安装了.NET framework 2,就可以省掉这一步)。

我的机子已经安装了.NET framework 2,完成以上两步后重启Apache,可以正常解析PHP文件了。

升级完成 ^_^

Popularity: 7% [?]

Tags: ,

  1. 3 Responses to “从Apache2.0.54到Apache2.2.3”

  2. Gravatar

    By I am lov'in it on 九 18, 2006 | Reply | Quote

    技术贴,没看懂,paopao好强!
  3. Gravatar

    By (没有名字) on 九 8, 2006 | Reply | Quote

    你还是那么强悍@_@~~看不懂~~~~
  4. Gravatar

    By 烟火流转 on 九 8, 2006 | Reply | Quote

    。。。不明。。。闭眼顶

Post a Comment