Apache 2.4 ProxyPass

ProxyPass 可以把 URL A 轉去 URL B,並保留網址是 URL A。

常見的用法可能像是

  1. 原本有網址 site-a.com,可是之後做了新版的網站,但是舊有的論壇功能 (www.site-a.com/forum/) 要留著
  2. 原本有 site-a.com 跟 site-b.com,但是其實某一路徑(/path1)下的東西是一模一樣,但是想要讓 site-a.com與 site-b.com的使用者看起來都在原本網站,且不想在兩個 server 上重複 deploy

以第一個情況來說,懶惰的方式就是把舊的網站整個搬去跑在別的 port (例如 site-a.com:8008/ ),然後把 www.site-a.com/forum/ 做 proxy pass 到 www.site-a.com:8008/forum/ 。
第二個情況,可能是把 /path1/ 放在 site-a.com 上,但實際上 site-b.com/path1/ 也是 proxy pass 去 site-a.com/path1/

example config file 如下:

用 proxy pass 和 redirect 是不太一樣的。如果是用 redirect,那之後的 request 都是對 redirect 之後的 server,但是 proxy 的話,兩邊的會有 request (如下)

Leave a Reply

%d bloggers like this: