返回   CHF站长论坛 > 综合讨论区 > 服务器架设与维护

服务器架设与维护 服务器架设,系统维护与优化,apache、IIS等技术讨论。

双至强仅二千,企商在线,最早租用商 魔兽世界私服 魔兽世界私服 亿恩1元帮您升级服务器! 天龙八部私服 完美世界私服 新开传奇私服
传奇私服 热血江湖私服 仙境私服 天龙八部私服 魔域私服 魔域私服 新开传奇私服 魔域私服 传奇私服
发表新主题 回复
 
主题工具 主题评分 显示模式
旧 2005-12-09, 17:22   #1 (页面定位)
youngong
 
注册日期: 2005-12-09
帖子: 1
youngong 是普普通通的会员
默认 一山能容二虎—Windws下基于Apache的PHP4和PHP5共存

在学习PHP过程中可能要同时用到PHP4和PHP5,网上也有不少关于二者共存的安装方法,大多是一个安装在IIS下,一个安装在Apache下。下面介绍一下本人的安装方法,自认为比较优化,而且非常方便升级。
  
为了方便介绍,先介绍一下本人的安装环境:Windows XP Pro SP2,Apache 2.0.55和PHP4.4.1、PHP5.1.1,都安装在D:\(即D区上有以下文件夹d:\apache2、d:\php4、d:\php5),网卡配置两个IP地址192.168.0.2和192.168.0.3(至于如何配置多个IP地址,不是本文介绍重点)。下面以Apache的模块式安装方法为例进行介绍:

1、安装配置Apache 2.0.55服务器。在同意许可协议后会有填写服务器信息的页面,本地调试,前面两个输入 localhost 。编辑httpd.conf 文件,分别定位到ServerName localhost:80和Listen 80,都在前面加#关闭其设置。

2、准备PHP。分别解压下载的PHP压缩包(例如php-5.1.1-Win32.zip),放置到d:\php4和d:\php5。

3、分别配置php.ini。因为有两个版本的PHP,所以要分别配置。分别复制一份php.ini-recommended后重命名为php.in,就放在原路径。
题外话:过时方法要这样处理,复制php.ini文件至x:\winnt(x:\windows)或apache的安装文件夹,并且copy x: \php\php5ts.dll、php4ts.dll等dll文件到winnt(windows)、或winnt\system32或apache的安装文件夹下。本人强烈推荐你不要这么做,以后升级比较麻烦,下面将给出理由。

4、修改windows path变量。加入
代码:
d:\php4;d:\php5
到path环境变量中,即告诉系统到哪里去查找php5ts.dll等动态链接库文件,所以我们也没有必要将这些dll文件复制到%windir%,所以升级PHP也方便很多,不用去一一删除原来那些文件。至于怎样修改path路径,你可以查看这里。

5、分别修改php.ini。主要修改一下extension_dir和extension_dir。分别在php.ini中找到上面的变量,加入适当的路径。我是这样修改的,PHP4的php.ini中
代码:
extension_dir = "D:\php4\extensions\"
代码:
include_path = "d:\php4\pear;d:\php4\includes"
PHP5的php.ini中
代码:
extension_dir = D:\php5\ext
代码:
include_path = "D:\php5\PEAR;D:\php5\"
其实一般来说还需要修改php.ini中的其他不少参数值,例如文件上传临时路径、Session临时路径、邮件设置、扩展模块配置(PHP5中为了支持mysql要去掉以下代码中的;号)
代码:
;extension=php_mysql.dll
但由于不是本文的重点,所以不详细介绍。

6、修改httpd.conf。在最后加入以下代码:
代码:
<IfDefine !php5>
Listen 192.168.0.2:80
LoadModule php4_module "d:/php4/sapi/php4apache2.dll"
PHPiniDir "d:/php4/php.ini"
</IfDefine>

<IfDefine php5>
Listen 192.168.0.3:80
LoadModule php5_module "d:/php5/php5apache2.dll"
PHPiniDir "d:/php5/php.ini" 
</IfDefine>

AddType application/x-httpd-php .php .phtml .php3 .php4
AddType application/x-httpd-php-source .phps
适当解释一下:
代码:
PHPiniDir = "d:\php4"
即告诉Apache在"d:\php4"路径中查找php.ini文件,这样我们就不必将php.ini复制到其他目录中去,很好地处理了两个php.ini的共存问题。IfDefine是Apache的指令,可以在Apache手册中查找。
http.conf的其他的指令,比如 DirectoryIndex 和 AddDefaultCharset 请自己设置。

7、创建PHP5的Apache服务。在命令行下执行以下命令:
代码:
apache -k install -D php5 -n Apache2-PHP5
即在windows中创建了php5 运行参数名称为Apache2-PHP5的服务项,可以到 管理工具->服务中启动,也可以使用 Apache 2 自带的 Monitor Apache Servers 启动。可以只运行任意一个PHP,也可以同时运行。

8、调试PHP。用以下地址调试PHP4
代码:
http://192.168.0.2
用以下地址调试PHP5
代码:
http://192.168.0.3
(具体安装时IP地址可自行设置)
特别提示:因为修改了path路径,所以一定要重启系统方可生效。而且配置了php.ini或http.conf后一定要重启Apache方可生效。(作者:youngong at 163.com)
youngong 当前离线   回复时引用此帖
旧 2005-12-09, 19:52   #2 (页面定位)
swenge
 
swenge 的头像
 
注册日期: 2005-11-28
帖子: 386
swenge 是普普通通的会员
默认

原创吗?好强!
swenge 当前离线   回复时引用此帖
旧 2005-12-09, 20:57   #3 (页面定位)
fyfei©
 
fyfei 的头像
 
注册日期: 2005-10-07
帖子: 7805
fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀fyfei 有着人尽皆知的贡献和荣耀
默认

强!!
fyfei 当前离线   回复时引用此帖
回复

书签

标签

主题工具
显示模式 对此主题评分
对此主题评分:



所有时间均为北京时间。现在的时间是 13:24