Apache 和 IIS 的巧妙结合
2009-05-13 00:45:24来源:未知 阅读 ()
Apache 和 IIS 的巧妙结合
前段时间决定运用PHP5来开发最新的项目。由于很多程序还是用PHP4开发的,所以就涉及到如何同时调试PHP4和PHP5程序的问题了。经过一番试验,终于找到一种简单的方法,让我可以方便的调试PHP4和PHP5程序。
基本设置
原理说穿了很简单,就是让IIS运行PHP4,然后让Apache2运行PHP5。难点主要就是如何解决PHP4和PHP5使用各自php.ini的问题。
Apache 和 IIS 的巧妙结合
前段时间决定运用PHP5来开发最新的项目。由于很多程序还是用PHP4开发的,所以就涉及到如何同时调试PHP4和PHP5程序的问题了。经过一番试验,终于找到一种简单的方法,让我可以方便的调试PHP4和PHP5程序。
基本设置
原理说穿了很简单,就是让IIS运行PHP4,然后让Apache2运行PHP5。难点主要就是如何解决PHP4和PHP5使用各自php.ini的问题。
一、首先安装配置IIS+PHP4,方法就不啰嗦了。然后在IIS中,将默认网站的TCP端口设置为8080,以避免和Apache发生冲突;
二、安装Apache(我装的Apache 2.0.52)和PHP5。安装PHP5时,不要把PHP5的php.ini复制到C:Windows中,这样会覆盖掉PHP4的php.ini文件。只要把PHP5的php.ini放在PHP5安装目录里面就行了;
三、配置Apache以支持PHP5:
LoadModule php5_module "d:/usr/local/php-5.0.3-Win32/php5apache2.dll"
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php
PHPIniDir "d:/usr/local/php-5.0.3-Win32"
其中最重要的一条就是 PHPIniDir,用来指明php.ini文件所在位置(也就是PHP5的安装目录)。
按照上面的配置后,PHP4和PHP5就可以同时运行了。使用
http://localhost:8080/
就是访问IIS+PHP4,而
http://localhost/
就是访问Apache+PHP5。
进一步优化
现在对刚刚的设置进一步优化,避免访问IIS+PHP4还要指定端口号的麻烦。
一、修改Apache配置文件,启用Proxy模块;
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
二、继续修改Apache配置文件,让Apache处理对IIS+PHP4的访问;
ProxyPass /iis/
http://127.0.0.1:8080/
ProxyPassReverse /iis
http://127.0.0.1:8080
这两行配置告诉Apache,当处理以/iis路径的请求时转发到
http://127.0.0.1:8080/
。由于Apache的代理功能对于访问者来说是完全透明的,因此我们就可以使用下面的路径分别访问IIS+PHP4和Apache+PHP5:
http://localhost/iis/
访问IIS+PHP4
http://localhost/
访问Apache+PHP5
现在感觉就好多了,不用输入端口号就可以很方便的访问PHP4和PHP5程序了。
让不同的虚拟主机分别使用PHP4和PHP5
按照上面的思路,还可以让不同的虚拟主机使用不同版本的PHP。参考下面的配置:
ServerAdmin
daut@dualface.com
DocumentRoot E:/www/dualface_dot_com
ServerName
www.dualface.com
ServerAlias dualface.com
DefaultLanguage zh-CN
AddDefaultCharset UTF-8
ServerAdmin
daut@dualface.com
ServerName dev.dualface.com
DefaultLanguage zh-CN
AddDefaultCharset GB2312
ProxyPass /
http://127.0.0.1:8080/
ProxyPassReverse /
http://127.0.0.1:8080/
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:我的服务器配置手记
- php5.2.8需要的pcre冲突问题 2009-05-13
- FreeBSD7 Apache2.2 PHP5 PostgreSQL8.3 Ports安装笔记 2009-05-13
- FreeBSD+postgresql+php5+diablo-jdk+Apache+Tomcat 2009-05-13
- FreeBSD libphp5.so 没有生成原因 2009-05-13
- ports php5+zend问题 2009-05-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash