如何使用其他URL而不是端口?

时间:2014-01-08 17:18:17

标签: apache url port

我有一台运行多个服务的服务器。其中一个可以通过域名“https://www.foo.bar”访问。另外两个服务正在特定端口上运行。所以可以通过“https://www.foo.bar:1234”访问它们。 是否能够以特定方式配置apache2服务器,因此它始终使用端口443,但使用不同的URL,如“https://www.foo.bar/service1”?

1 个答案:

答案 0 :(得分:0)

尝试ProxyPass,您所描述的是一个名为反向代理的设置的特例:您的httpd将请求转发给其他服务并将答案返回给客户端。 (其他服务碰巧在你的情况下在同一台机器上运行,但它不需要。一种简单的后端负载平衡也可以通过这种方式完成。)

<Location /service1>
ProxyPass https://localhost:1234
ProxyPassReverse https://localhost:1234
</Location>

请注意,您的其他服务需要对此类设置提供一些基本支持:如果它返回带有链接的HTML页面,则不能再认为https://www.foo.bar:1234/foo/bar.html是告诉客户端的正确URL。 httpd不会查看返回的内容并为您重写。