專業丈量施工設計窗簾窗飾,包含各種窗簾布 捲簾等,高質感窗簾,樣式齊 | 優質油漆工程,各式油漆粉刷專業負責價格合理 免費估價,公道滿意 |
Zope 虛擬主機的實例教學 |
房東:小寶 發表時間:2007-02-08 |
Zope 預設都是執行在 port:8080 ,因此在瀏覽 Zope 網站時,都必須指定如 http://www.pwchi.info:8080/ 這樣的網址。 如果想在原有的 Apache Web Server 基礎上,能夠不需另外指定 port,就能讓使用者直接透過 http://www.pwchi.info/zope 瀏覽 Zope 網站,而不是用原本 http://www.pwchi.info:8080/ 這樣的怪異網址。那麼就需要使用 Zope 的 Virtual Host Monster 物件,搭配 Apache 的 Rewrite 和 Proxy 模組來完成。 在這個例子當中,概要的運作過程如下圖。 首先,使用者發出 HTTP 請求 http://www.pwchi.info/zope 給 Apache。 請求會經過 Apache 的 Rewrite 模組重新組合。 Rewrite 參照設定好的規則,將請求導向 http://www.pwchi.info:8080/ 。 接著 Zope 對請求做出回應。 對使用者而言,他並不會感受到轉送過程的存在,使用者的 Browser 網址列仍舊是 http://www.pwchi.info/zope 。 ◎ 實作方法 Apache 提供三種方式達成這樣的功能: mod_rewrite method mod_proxy Method Fast CGI / Persistent CGI Method 其中 FCGI/PCGI 的方式,會嚴重影響執行效能,因此已經很少使用且不建議。這裡將以前面提到的例子,介紹 mod_rewirte 與 mod_proxy 兩種使用方式。 由於接下來的示範均為 Apache 的設定語法,因此必須有修改 Apache 設定檔的權限,並且在設定完成之後,重新啟動 Apache 使設定生效。 開始之前,請先確定已經安裝了 Zope 與 Apache 2 ,並載入 mod_rewrite、mod_proxy 和 mod_proxy_http 模組。 ◎ Zope VHM 要讓 Apache 導引到新的 URL ,我們當然要先知道新的 URL 到底是什麼。下列是新的 URL 模樣。一時之間可能無法理解,接下來本文將分段說明。 PLAIN TEXT CODE: http://localhost:8080/VirtualHostBase/http/www.pwchi.info:80/zope/VirtualHostRoot/_vh_zope http://localhost:8080 這是 Zope 所在主機的位址,如果有防火牆控管,必須使用內部網路的主機位址,如 192.168.1.1。 /VirtualHostBase/http/www.pwchi.info:80/zope VirtualHostBase 是 Zope 的一個物件。需要注意的地方是 www.pwchi.info:80/zope ,這是使用者到時候輸入的虛擬網址。不過必須特別標明 port。 /VirtualHostRoot/_vh_zope 當用 www.pwchi.info/zope 作為 zope 的連結位址時,zope 當中所有的連結,也都必須要調整成 www.pwchi.info/zope/ 開頭的連結位址。所以必須加上 _vh_zope 作為開頭路徑,這樣 zope 就會自動為所有的網頁連結的路徑開頭加上 /zope/。 ◎ Apache mod_rewrite mod_rewrite 是一個強大的 URL 重導向模組。因為他使用正規表示式作為比對規則的方法,因此幾乎提供無限的可能性,就看你怎麼活用正規表示式。 設定內容 PLAIN TEXT CODE: RewriteEngine On RewriteRule ^/zope(.*) http://localhost:8080/VirtualHostBase/http/www.pwchi.info:80/zope/VirtualHostRoot/_vh_zope$1 [L,P] RewriteEngine 是用來啟動或關閉 Rewrite 功能,預設為 Off。 因此必須先用 RewriteEngine On 來開啟 Rewrite 功能。 RewriteRule 是實際進行 URL 重導向的語法。 語法:RewriteRule <比對規則> <要導向的網址> [旗標]。 比對規則中的 ^/zope(.*) 是一個正規表示式,代表只要請求的 URL 中有 /zope 就算符合。當符合規則時,就會被重新導向到新的網址。 $1 表示將 /zope 以後的字串,接在替換後的URL後面。 [L,P] 則是控制旗標 "L" 表示立即停止規則的運算,如果後面有其他的 RewriteRule 規則設定,就不會被干擾。 "P" 表示將替換後的 URL 提出代理請求。為了不讓使用者察覺不同,如果不加 P ,瀏覽器網址列會直接被指向新網址。 ◎ Apache mod_proxy Proxy 的設定相對於 Rewrite 簡單許多。如果沒有需要很複雜的判斷規則,建議使用 Proxy 方式即可。 特別注意,除了 mod_proxy 以外,也需要一同載入給 HTTP 協動用的 mod_proxy_http 模組。 設定內容 PLAIN TEXT CODE: ProxyPass /zope http://localhost:8080/VirtualHostBase/http/giant.twlinux.net:80/zope/VirtualHostRoot/_vh_zope ProxyPass 用來將指定的位址,映射到指定位址。 語法:ProxyPass <相對URL> <目的URL> ◎ 結論 Zope 是一個功能強大的 Application Server ,如果再配合本次介紹的 rewrite 與 proxy 模組,就可以架構出實用的 Zope 的虛擬主機解決方案了。 關於作者: 嗨,我是 Po-Wen Chi (紀博文)。一個自由軟體鬥士,我沒有萬能伙計,只有一台 NB。我在網路上的 ID 是 「pwchi」。研究興趣是Linux 作業系統、OpenSource CMS、資訊安全與數位學習,目前主要參與 Plone CMS 網站專案的相關測試與維護工作。接下來在開放鑄造場電子報的技術專欄中,會陸續跟大家分享這幾個領域的研究心得或實作講解。 |
|
廣利不動產-新板特區指名度最高、值得您信賴的好房仲 您的托付,廣利用心為您服務 廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲 完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心! |
姓名: | |||
佈告內容: | |||
其他選項: | |||
|