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 include的妙用,实现路径加密
Jul 29 PHP
几款免费开源的不用数据库的php的cms
Dec 19 PHP
is_uploaded_file函数引发的不能上传文件问题
Oct 29 PHP
php.ini save_handler 修改不生效的解决办法
Jul 22 PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
Aug 19 PHP
Yii 快速,安全,专业的PHP框架
Sep 03 PHP
PHP实现长文章分页实例代码(附源码)
Feb 03 PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 PHP
curl 出现错误的调试方法(必看)
Feb 13 PHP
PHP单例模式与工厂模式详解
Aug 29 PHP
Laravel ORM 数据model操作教程
Oct 21 PHP
PHP pthreads v3使用中的一些坑和注意点分析
Feb 21 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+ACCESS 文章管理程序代码
2010/06/21 PHP
php做下载文件的实现代码及文件名中乱码解决方法
2011/02/03 PHP
解析PHP无限级分类方法及代码
2013/06/21 PHP
Thinkphp模板中截取字符串函数简介
2014/06/17 PHP
使用VS开发 Node.js指南
2015/01/06 Javascript
jQuery实现冻结表头的方法
2015/03/09 Javascript
《JavaScript函数式编程》读后感
2015/08/07 Javascript
浅谈Nodejs观察者模式
2015/10/13 NodeJs
整理JavaScript创建对象的八种方法
2015/11/03 Javascript
两种js监听滚轮事件的实现方法
2016/05/13 Javascript
javascript事件处理模型实例说明
2016/05/31 Javascript
浅谈Vuex@2.3.0 中的 state 支持函数申明
2017/11/22 Javascript
Vue2.X 通过AJAX动态更新数据
2018/07/17 Javascript
d3.js 地铁轨道交通项目实战
2019/11/27 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
2019/12/09 Javascript
Jquery滑动门/tab切换实现方法完整示例
2020/06/05 jQuery
node.js +mongdb实现登录功能
2020/06/18 Javascript
详解微信小程序轨迹回放实现及遇到的坑
2021/02/02 Javascript
[47:04]EG vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
python批量修改文件后缀示例代码分享
2013/12/24 Python
python 性能提升的几种方法
2016/07/15 Python
python OpenCV学习笔记实现二维直方图
2018/02/08 Python
解析python实现Lasso回归
2019/09/11 Python
PyCharm+Miniconda3安装配置教程详解
2021/02/16 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
2021/02/20 Python
理工大学毕业生自荐信
2013/11/01 职场文书
毕业生怎样写好自荐信
2013/11/11 职场文书
建筑公司文秘岗位职责
2013/11/29 职场文书
打架检讨书100字
2014/01/08 职场文书
办理护照工作证明
2014/10/10 职场文书
2014年少先队工作总结
2014/12/03 职场文书
婚礼女方父母答谢词
2015/01/04 职场文书
酒吧七夕情人节宣传语
2015/11/24 职场文书
创业开店,这样方式更合理
2019/08/26 职场文书
最新最全的手机号验证正则表达式
2022/02/24 Javascript
Redis 哨兵机制及配置实现
2022/03/25 Redis