天天看點

如何在 Apache 中重定向 URL 到另外一台伺服器

假設你正在重新設計公司的網站。你已決定将内容和樣式(html檔案、javascript 和 css)存儲在一個伺服器上,将文檔存儲在另一個伺服器上 - 這樣可能會更穩健。

但是,你希望這個更改對使用者是透明的,以便他們仍然能夠通過之前的網址通路文檔。

在下面的例子中,名為 <code>assets.pdf</code> 的檔案已從 <code>192.168.0.100</code>(主機名:<code>web</code>)中的<code>/var/www/html</code> 移動到<code>192.168.0.101</code>(主機名:<code>web2</code>)中的相同位置。

<code>rewriterule "^(/assets\.pdf$)" "http://192.168.0.101$1" [r,l]</code>

其中 <code>$1</code> 占位符,代表與括号中的正規表達式比對的任何内容。

現在儲存更改,不要忘記重新啟動 apache,讓我們看看當我們打開 <code>192.168.0.100/assets.pdf</code>,嘗試通路 <code>assets.pdf</code> 時會發生什麼:

在下面我們就可以看到,為 <code>192.168.0.100</code> 上的 <code>assets.pdf</code> 所做的請求實際上是由<code>192.168.0.101</code>處理的。

<code># tail -n 1 /var/log/apache2/access.log</code>

如何在 Apache 中重定向 URL 到另外一台伺服器

檢查 apache 日志

原文釋出時間為:2017-01-02

本文來自雲栖社群合作夥伴“linux中國”