同时使用PHP5和PHP4运行Apache2

运行Apache2与PHP5和PHP4在同一时间

版本1.0
作者:Falko Timme
最后编辑:02/07/2006

本教程将介绍如何同时启用PHP5和PHP4来安装和配置Apache2。 因为不可能运行PHP5和PHP4作为Apache模块,所以我们必须运行其中一个作为CGI,另一个作为Apache模块。 在本文中,我将使用PHP5作为Apache模块和PHP4作为CGI,我将描述Linux发行版Debian Sarge(3.1)Ubuntu 5.10(Breezy Badger)的设置

我想先说说这不是建立这样一个系统的唯一途径。 实现这一目标有很多方法,但这是我所采取的方式。 我不会保证这将为您工作!

1安装Debian Sarge(3.1)

首先,您必须至少有一个基本的Debian安装工作,如Debian Sarge的“完美安装”教程前两页所述,youcl: //www.youcl.com/perfect_setup_debian_sarge

由于PHP5在官方Debian Sarge存储库中不可用,因此我们必须向/etc/apt/sources.list添加另一个存储库( packages.dotdeb.org )。 添加这两行:

deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all

/etc/apt/sources.list (我的看起来像这样:

deb http://ftp2.de.debian.org/debian/ stable main
deb-src http://ftp2.de.debian.org/debian/ stable main

deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all

deb http://security.debian.org/ stable/updates main

)并运行

apt-get更新

之后。

现在我们可以安装Apache2以及Apache2-PHP5模块和PHP4-CGI:

apt-get install apache2 apache2-doc
apt-get install libapache2-mod-php5 php4-cgi

接下来,我们可以在我们的服务器上安装我们需要的所有PHP5和PHP4模块,如下所示:

apt-get安装php5-curl php5-dev php5-gd php5-gmp php5-imap php5-ldap php5-mcrypt php5-mhash php5-ming php5-mysql php5-mysqli php5-odbc php5-pdo-mysql php5-pdo-sqlite php5-pear php5-pspell php5-snmp php5-sybase php5-tidy php4-curl php4-domxml php4-gd php4-gmp php4-imap php4-ldap php4-mcal php4-mcrypt php4-mhash php4-ming php4-mysql php4- odbc php4-pspell php4-recode php4-snmp php4-xslt php4-xdebug curl libwww-perl imagemagick (1行!)

编辑 /etc/apache2/apache2.conf 。 更改

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml

DirectoryIndex index.html index.htm index.shtml index.cgi index.pl index.php index.php4 index.xhtml

并添加这两行(在可以找到AddTypeAddHandler指令的部分中):

AddHandler php-script .php4
Action php-script /cgi-bin/php4

这将确保扩展名为.php4的 PHP文件作为CGI执行。 扩展名为.php的 PHP文件将由Apache2-PHP5模块运行。

接下来,我们必须启用一些Apache模块,例如actions模块(否则我们不能运行PHP4作为CGI):

a2enmod动作
a2enmod ssl
a2enmod重写
a2enmod suexec
a2enmod包括

重新启动Apache,你完成了!

/etc/init.d/apache2重新启动

现在我们可以测试我们的安装:把两个文件, info.phpinfo.php4 ,具有相同的内容:

<?php
phpinfo();
?>

进入/ var / www (这是Debian的Apache2的默认文件根目录),并尝试在浏览器中访问它们(如果服务器的IP地址为192.168.0.100 ,例如,您将键入http://192.168.0.100/info .phphttp://192.168.0.100/info.php4 )。 您应该看到两个不同的PHP版本,一个作为Apache模块(PHP5)运行,另一个(PHP4)称为CGI:

info.php

info.php4

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏