目前,我们有一个IIS服务器作为我们的主要Web服务器。 我们正在实现一个Apache服务器,但仍然需要IIS服务器可访问。 通常情况下,这是一个简单的事情,因为Apache2可以代理一个子域到这个服务器。
然而,我们的问题是这样的:我们在IIS服务器上使用dotnetCharting,许可与域名绑定。 为了使dotnetCharting工作,另一个许可证将不得不被购买。
我的问题是,Apache2可以代理一个子目录吗? 例如,可以将“www.example.com/subdir”指向IIS服务器? 这似乎不应该是不可能的,但我似乎无法find一个解决scheme。
当然。 不过要小心; 很多networking应用程序的urlpath更改devise不佳。 当前是否在子目录中使用该应用程序?
# You'll probably want this to maintain the host mapping in IIS ProxyPreserveHost On # Swap in the IP address or internal host name of your IIS server: ProxyPass /subdir/ http://192.0.2.100/subdir/
或者,如果要更改URLpath,请记住,由于资源(CSS,javascript,图像)的绝对path,许多应用程序都会遇到问题:
ProxyPass /subdir/ http://192.0.2.100/ ProxyPassReverse /subdir/ http://192.0.2.100/
当然。
在你的Apache VHost中设置下面的指令
ProxyPass /subdir http://iis.server/.../ ProxyPassReverse /subdir http://iis.server/.../
注意最后的“/”是强制性的。
有关更多信息: http : //httpd.apache.org/docs/2.2/mod/mod_proxy.html
最后的斜线不是强制性的。 我有这样的设置
ProxyPass /dir http://exmpale.com/dir/ ProxyPassReverse /dir http://exmpale.com/dir/
顶层工作,但主要下层的东西没有。
我改变了这一切,一切工作。
感谢您的错误信息!
ProxyPass /dir http://exmpale.com/dir ProxyPassReverse /dir http://exmpale.com/dir