2012-02-14 32 views
1

我不是服務器管理員,只是一個Web開發人員試圖行事。 :)反向代理的基礎知識?我錯過了什麼?

我們有網站A和網站B.網站A有一個名爲subby.websitea.com的子域,它通過名稱連接到另一個服務器。我被告知,爲了使subby.websitea.com APPEAR成爲網站A(即websitea.com/subby/)的子文件夾,而不是反向代理。

好吧,我一直在看整個晚上的文檔,我只是....我沒有得到的基礎知識!我的主人很友善地設置了我們的VPS,這裏列出的信息如下:http://www.apachetutor.org/admin/reverseproxies

但是......那麼什麼!?我如何完成這項工作?我現在編輯htaccess文件嗎?我還沒有找到它的工作原理的簡單解釋。我喜歡學習,但我認爲我必須先克服這個基本的駝峯.... :)

回答

4

因爲它是你的問題的一部分(或全部?),反向代理基本上是一個網關或中介服務器和客戶之間。請求被髮送到反向代理,並且它(反向代理)將它們轉發到服務器。
反轉上還有許多其他功能,如負載平衡和緩存。我想Google搜索應該會爲您提供更多關於此問題的資源和文檔。

據我所知,你有兩個網站(subby.websitea.com/www.websitea.com),你想'www.websitea.com/subby'轉發到「subby.websitea.com」。

編輯部分:您可以訪問Apache配置,因此您需要在httpd.conf中啓用mod_proxy和mod_proxy_http。然後取消註釋

Include extra/httpd-vhost.conf 

(在http.conf中,在文件末尾)。

然後您必須編輯httpd-vhost.conf文件來添加您的代理指令。

<VirtualHost *:80> 
/* Other default config like Documentroot, etc */ 
ProxyRequests Off 
ProxyPass /subby/ http://subby.websitea.com/ 
ProxyPassReverse /subby/ http://subby.websitea.com/ 
</VirtualHost> 

現在,進來http://www.websitea.com/subby/一切都將被轉發到http://subby.websitea.com沒有得到ADRESS改變。

編輯再次:我忘了說:記住每次你改變.conf文件中的東西時重新啓動Apache。

希望這會有所幫助。

+0

嘿,謝謝你的嘗試,但它並沒有真正回答我的問題。 :P 我說我有一個VPS,所以是的,我完全控制Apache和它的一切。 而且我也發佈了相同的確切鏈接。是的,它告訴我「配置」,但它沒有說明如何處理這些配置。 我相信你有倒退。我不想要子域...這是我想要完成的: http://www.seomoz.org/blog/what-is-a-reverse-proxy-and-how-can-it-help -my-seo – PaulHanak 2012-02-14 13:36:05

+0

我很尷尬我誤解了你的問題中的兩個重點,我很抱歉。我正在編輯我之前的回答。 – 2012-02-14 14:42:13

+0

哈哈,沒問題。我想我需要學習如何使用shell訪問,不是嗎?大聲笑。我會繼續向你投票,並給她一個大學的嘗試。 – PaulHanak 2012-02-14 19:30:18

0

啓用的mod_proxy和mod_proxy_http

# a2enmod proxy_http這也應該使mod_proxy的作爲一個依賴。

創建一個新的文件VirtualHosts與/etc/apache2/sites-available/subby.websitea.com內容:

<virtualhost *> 
    ServerName subby.websitea.com 
    ProxyRequests off 
    ProxyPass/http://192.168.1.15/ 
    ProxyPassReverse/http://192.168.1.15/ 
</virtualhost> 

啓用新網站:

a2ensite subby.websitea.com

刷新阿帕奇:

service apace2 reload

待辦事項東北。