0
我有一個運行多個服務的服務器。其中一個可通過域名「https://www.foo.bar」訪問。兩個其他服務正在特定端口上運行。所以他們可以通過「https://www.foo.bar:1234」訪問。 它是否能夠以特定方式配置apache2服務器,因此它始終使用端口443,但具有不同的URL,如「https://www.foo.bar/service1」?如何使用不同的URL而不是端口?
我有一個運行多個服務的服務器。其中一個可通過域名「https://www.foo.bar」訪問。兩個其他服務正在特定端口上運行。所以他們可以通過「https://www.foo.bar:1234」訪問。 它是否能夠以特定方式配置apache2服務器,因此它始終使用端口443,但具有不同的URL,如「https://www.foo.bar/service1」?如何使用不同的URL而不是端口?
嘗試ProxyPass,你所描述的是一個名爲的設置的特殊情況。反向代理:你的httpd將請求轉發給其他服務並將答案返回給客戶端。 (其他服務發生在你的情況下在同一臺機器上運行,但它不需要。一種簡單的後端負載平衡的也可以做這樣的。)
<Location /service1>
ProxyPass https://localhost:1234
ProxyPassReverse https://localhost:1234
</Location>
要小心,你的其他服務這種設置需要一些基本的支持:如果它返回帶有鏈接的HTML頁面,它不能再假設https://www.foo.bar:1234/foo/bar.html
是告訴客戶端的正確URL。 httpd不會查看返回的內容併爲您重寫。