
假設我有一個圖像的 URL:
www.domain.com/image.jpg
我想讓 image.jpg 實際上完全由另一台伺服器(不同的機器和 IP)提供,位於
static.domain.com/image.jpg
是否可以配置 Apache,使任何對 www.domain.com/image.jpg 的請求實際上完全由 static.domain.com/image.jpg 提供服務,但對於用戶來說,它看起來像是來自 www .domain .com/image.jpg?
答案1
無論您做什麼,如果您嘗試使用單一向外位址從多個伺服器提供內容,您將必須以某種方式從與 www.domain.com 建立的 TCP 連線取得內容,因為將已建立的TCP 連線「移交給」另一台機器在技術上是不可行的。
您唯一的選擇是使用重定向 - 這是可檢測到的。但是為什麼要這麼麻煩呢,除了可能避免破壞傳入的超連結之外? Web 從一開始就旨在讓單一網頁包含來自多個伺服器的資訊。
所以保持簡單! :-) 如果您為靜態檔案使用單獨的主機名,那麼您將成為一個很好的夥伴。
答案2
這可能如果您可以控制伺服器所在的交換機,則這是可能的。你需要利用直接伺服器傳回。不過,這是一個非常高級的設置,除非您擁有大量機器,否則可能沒有多大意義。
更好的解決方案是直接從 static.domain.com 提供內容。即使您必須支付額外的 SSL 憑證費用,但就您花費的時間而言,它也會便宜得多。如果這不適合您,請告訴我們為什麼。