PHP4和PHP5共存于一系统


Posted in PHP onNovember 17, 2006
PHP4和PHP5共存于一系统
在其它地方看到的一篇文章,老了一点,这两天也正想找个时间来用IIS+APACHE使用不同端口来做两个PHP共存....到时再发出来'罢..看原文吧 -------------------------------------------------------------好处不多说了,:D 坏处嘛...是CGI方式的(引用官方原文:we consider installing PHP like this suicidal.--esayr注:E文不好?呵,最后一个是自杀的意思)废话少说,直接看方法: 一,本文涉及软件极其版本:Windows 2000 Professional/XPApache 1.3.28 FOR WINMicrosoft Internet Server Information(IIS6)PHP 4.3.3(4.3.5), PHP 5.0.0 beta(5.0.0RC1)MySQL 3.23.57(3.23.58) 二,大致步骤:(二,三任选) 1.分别安装各版本的PHP 2.安装APACHE,设置APACHE 和 PHP 3.安装IIS,并在IIS中设置PHP各版本[注1] 4.安装MYSQL 三,安装前准备:将所须程序COPY至各文件夹,本文按照以下目录结构进行,你可以根据需要自行修改^^: C:/httpd/ApacheC:/httpd/MySQLC:/httpd/PHP4C:/httpd/PHP5C:/httpd/php-includesC:/httpd/phpMyAdminC:/httpd/tmpC:/httpd/www 到C:/WINNT/system32/drivers/etc(XP是C:/WINDOWS/system32/drivers/etc)文件夹下,找到hosts文件(没有?! @_@ 那么.... :D ),在底下增加 127.0.0.1 php4 # Waiter PHP 4 127.0.0.1 php5 # Waiter PHP 5 吼吼...如果你懂~~自己修改其他名字吧 8D 我们继续...保存文件... 四,安装各版本PHP假设你已经下载你需要的各版本PHP...(哪下载?? :P 自己找吧...)这里以4.3.3和5.0.0-beta为例...(4.3.5vs5.0.0RC1我也试了.如果和你环境不一样不要怪我 :( ,大同小异,自己琢磨吧) ;) ㈠安装PHP4.3.3①解压缩下载文件(:) 地球人都知道)②将PHP4.3.3中的php.exe, php.ini-recommended, phpêmbed.lib, php4ts.dll, php4ts.lib, dll/*.* 和 extensions/*.* 拷贝到C:/httpd/PHP4③修改php.ini-recommended:extension_dir = "C:/httpd/PHP4/extensions/"cgi.force_redirect = 0保存为php.ini(就在C:/httpd/PHP4/下) ㈡安装PHP5.0.0BETA①解压缩... ②将php.exe, php.ini-recommended, phpêmbed.lib, php4ts.dll, php4ts.lib, dll/*.* 和 extensions/*.*拷贝至C:httpdPHP5如果是PHP5.0.0RC1,那么没有dll和extensions目录,只有ext--就是extensions拉如果...你是mysql的忠实用户,别忘了把libmysql.dll也拷过去[注2].③修改php.ini-recommended:extension_dir = "C:/httpd/PHP5/extensions/"cgi.force_redirect = 0如果是PHP4.0.0RC1,那么extension_dir = "C:/httpd/PHP5/ext/"保存为php.ini(就在C:/httpd/PHP5/下) 五,配置APACHE打开C:/httpd/Apache/conf/httpd.conf,在底下追加一些设置: ServerAdmin test@php433 ServerName php4 ServerAlias www DocumentRoot "C:/httpd/www" Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all ScriptAlias /php4/ "C:/httpd/php4/" AddType application/x-httpd-php .php Action application/x-httpd-php "/php4/php.exe" ServerAdmin test@php500 ServerName php5 DocumentRoot "C:/httpd/www" Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny Allow from all ScriptAlias /php5/ "C:/httpd/php5/" AddType application/x-httpd-php .php Action application/x-httpd-php "/php5/php-cgi.exe" 六,关于PHP5和MYSQLMYSQL的安装,我就不多说了,自己下了装吧...(跳过这段没意见吧? )你可以通过修改php.ini,来加载MYSQL... (难过...) 七,测试...启动APACHE(如果httpd.conf配置有错,会有出错提示...),然后地址栏输入http://php4和http://php5就分别启动PHP4和PHP5咯...爽吗? :D :D :D [注3]相信对广大PHP程序员,以及想学PHP5又不想放弃PHP4的同志来说,这会是个不错的方法.ENJOY IT! 总结一下:其实思路很简单,利用CGI方式实现PHP4和PHP5的共存.我找了很多资料,这个算最简单最实用了.不过只适合大家本机玩,千万别在服务器上这么搞...否则~后果自负...别找我 如果你按上面方法有问题,可以尝试其他途径,这里罗列一些国外的成功案例:http://wiki.coggeshall.org/37.htmlhttp://www.circle.ch/blog/p1387.htmlhttp://www.schlitt.info/applications/blog/..._5_prallel.html 有兴趣的可以继续学习下... 继续关于本方案的一点重要补充: PHP4和PHP5共存,存在一个php.ini冲突的问题... 大家都知道,一般做法是需要将php.ini复制到系统文件夹下(C:WinNT or C:Windows).如果同时安装多版本,势必会造成冲突... 其实,如果大家仔细阅读PHP安装文档,会有如下一段文字:Does Where C I cut to could the php.ini? The php.ini files is only searched in two places: 1) in your Apache installation directory (e.g. c:apacheapache) 2) in your %SYSTEMROOT% directory. 而我们正是使用的第一种方式...(是不是官方早料到有这种情况??GOD KNOWS...) 我在上述环境下测试成功了...如果你遇到困难可以留言或到讨论区一起讨论。 结语:偶不太会写教程之类的东东...自己看了懂,却不是很容易让别人理解,大家只好忍让了.虽然过程比较简单,不过费了我不少时间(有两个地方...我找的资料有误,把我害惨了),这个大A作证拉...( :D 大A睡了一觉起来上厕所,我还在...此处少儿不宜,删去500字) PHP5时代越来越近,赶紧深入了解去吧... -------------------------------------------------------------------------[注1]:本来想写FOR IIS的...可实在不想在自己机器上装个没用的东西(对我而言 :( ),so...标题列了,却放弃写了...对部分看客说声抱歉... [注2]:这里说点题外话:在PHP5.0.0RC1中,不知道大家看到ext下有个mysqli.dll,以及php.exe同层目录下有个libmysqli.dll么?奇怪这是干嘛的?其实这是官方针对MYSQL的新版(4.1.0好象是...吧)的一个升级,对于高版本MYSQL玩家可以试试...据说支持MYSQL一些新特性哦 [注3]:在启动APACHE时,如果看到什么"overlap on port 80"...不要着急,在httpd.conf中,把NameVirtualHost *:80前的注释去了即可...(这个地方难了我好长时间...只怪APACHE设置不熟悉.不过这次算好好把APACHE的设置看了遍,还是有收获)

相关文章 • apache 2.2.2 + PHP5.1.4 不能运行的解决办法. - 05-11 02:07 pm - 点击: 12651• PHP5.1.3发布 - 05-03 09:41 pm - 点击: 1860• PHP5学习笔记 -- Classes and Objects in PHP5 - 09-05 02:13 pm - 点击: 5776• 从PHP4.3.*升级到PHP5.0.0 - 08-09 01:49 am - 点击: 5136• php4和php5的配置异同比较 - 08-01 06:25 pm - 点击: 4260• redhat 9下配置APACHE2.0.50 +PHP5+MYSQL4.0.20+GD库 - 07-29 02:00 am - 点击: 13784• php5 for windows 安装详解 - 07-14 10:33 pm - 点击: 13370• PHP5正式版昨日发行--附PHP研究手册 - 07-14 10:04 pm - 点击: 6069• 为面向对象而生的PHP5 之二 - 06-25 07:13 pm - 点击: 3749• 为面向对象而生的PHP5 (1) - 06-25 07:11 pm - 点击: 4488
PHP 相关文章推荐
php 判断数组是几维数组
Mar 20 PHP
关于php正则匹配汉字的方法介绍
Apr 25 PHP
PHP生成等比缩略图类和自定义函数分享
Jun 25 PHP
PHP中提问频率最高的11个面试题和答案
Sep 02 PHP
PHP依赖倒置(Dependency Injection)代码实例
Oct 11 PHP
php的ddos攻击解决方法
Jan 08 PHP
PHP中文乱码解决方案
Mar 05 PHP
CodeIgniter与PHP5.6的兼容问题
Jul 16 PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 PHP
PHP时间处理类操作示例
Sep 05 PHP
laravel 框架执行流程与原理简单分析
Feb 01 PHP
数据结构之利用PHP实现二分搜索树
Oct 25 PHP
Apache2 httpd.conf 中文版
Nov 17 #PHP
php环境配置 php5 mysql5 apache2 phpmyadmin安装与配置
Nov 17 #PHP
一个MYSQL操作类
Nov 16 #PHP
一个好用的分页函数
Nov 16 #PHP
第十五节--Zend引擎的发展
Nov 16 #PHP
第十四节--命名空间
Nov 16 #PHP
第十三节--对象串行化
Nov 16 #PHP
You might like
PHP用户指南-cookies部分
2006/10/09 PHP
PHP callback函数使用方法和注意事项
2015/01/23 PHP
PHP常见数组函数用法小结
2016/03/21 PHP
php set_include_path函数设置 include_path 配置选项
2016/10/30 PHP
PHP简单装饰器模式实现与用法示例
2017/06/22 PHP
PHP的JSON封装、转变及输出操作示例
2019/09/27 PHP
Gambit vs CL BO3 第三场 2.13
2021/03/10 DOTA
仿163填写邮件地址自动显示下拉(无优化)
2008/11/05 Javascript
基于Jquery的简单&简陋Tabs插件代码
2010/02/09 Javascript
简短几句 通俗解释javascript的闭包
2011/01/17 Javascript
在多个页面使用同一个HTML片段《续》
2011/03/04 Javascript
为指定的元素添加遮罩层的示例代码
2014/01/15 Javascript
JavaScript异步回调的Promise模式封装实例
2014/06/07 Javascript
JSON.stringify转换JSON时日期时间不准确的解决方法
2014/08/08 Javascript
JavaScript学习笔记之内置对象
2015/01/22 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
2016/02/14 Javascript
jquery解析XML及获取XML节点名称的实现代码
2016/05/18 Javascript
如何在JS中实现相互转换XML和JSON
2016/07/19 Javascript
AngularJS入门教程之Select(选择框)详解
2016/07/27 Javascript
js中通过getElementsByName访问name集合对象的方法
2016/10/31 Javascript
ES6新特性四:变量的解构赋值实例
2017/04/21 Javascript
JavaScript的数据类型转换原则(干货)
2018/03/15 Javascript
Vuejs监听vuex中值的变化的方法示例
2018/12/02 Javascript
JS字典Dictionary类定义与用法示例
2019/02/01 Javascript
Vue.js页面中有多个input搜索框如何实现防抖操作
2019/11/04 Javascript
react的hooks的用法详解
2020/10/12 Javascript
python实现zencart产品数据导入到magento(python导入数据)
2014/04/03 Python
Python3如何解决字符编码问题详解
2017/04/23 Python
Python 从一个文件中调用另一个文件的类方法
2019/01/10 Python
Django项目中添加ldap登陆认证功能的实现
2019/04/04 Python
树莓派与PC端在局域网内运用python实现即时通讯
2019/06/22 Python
Python任务自动化工具tox使用教程
2020/03/17 Python
HTML5新增form控件和表单属性实例代码详解
2019/05/15 HTML / CSS
Java的接口和C++的虚类的相同和不同处
2014/03/27 面试题
详解MySQL连接挂死的原因
2021/05/18 MySQL
vue3使用vue-router的完整步骤记录
2021/06/20 Vue.js