双服务器技术在一台计算机上

我目前有在家里我的web服务器上运行IIS,我使用DNS2Go提供一个静态域名。 我的旧网站通过ODBC驱动程序使用ASP与VB脚本和Access数据库,我的新网站使用APACHE,PHP和MySQL。 我希望能够继续为PHP页面提供ASP页面,并且据我所知,只要使用不同的端口号,我就可以在一台计算机上设置两台服务器。

我将如何处理http://domain.myip.org/iis/与IIS服务器的请求和http://domain.myip.org/apache/与appache服务器的请求? 真的,我希望能够将请求路由到任何我喜欢的目录的正确的服务器。

由于有些用户位于企业防火墙之后,并且没有任何访问80或443以外的端口的可能性,因此您不应该简单地将用户redirect到其他端口,而是通过代理请求。 虽然这意味着使用更多的Apache资源,它可以帮助一些用户很多。

你可以通过让apache2在端口80上运行,在另外一些端口上运行IIS来实现这一点,例如10080.在apache2的configuration文件中,你可以使用下面的指令通过特殊的url请求进行代理:

ProxyPass /iis/ http://localhost:10080/ ProxyPassReverse /iis/ http://localhost:10080/ 

你需要一个有效的mod_proxy模块,并可以使用重写进一步的function,例如只代理特定的郊区的IIS。

那么,首先我想 – 让Apache生活在端口80,并使用mod_rewriteredirect特定的path到另一个端口。

 # replace [iis_port#] with something like 8080 or wherever you put it RewriteRule ^/iis(.*) http://www.domain.myip.org:[iis_port#]$1 [R] # or the whole host RewriteCond %HTTP_HOST% www.domain.iis.myip.org RewriteRule (.*) http://www.domain.iis.myip.org:[iis_port#]$1 [R] 

这是非常简单的解决scheme,所以有人可能会发布更好的东西。