您可以在代理伺服器上儲存一或多個自動配置檔案,並將該代理伺服器當成 Web 伺服器使用 (其唯一的文件是自動配置檔案)。此舉可以讓身為代理伺服器管理員的您,維護組織中用戶端所需的代理伺服器自動配置檔案。同時也可以透過這種方式將該檔案保存在集中位置,因此更新檔案時,只需要執行一次更新動作,所有的瀏覽器用戶端都就可以自動取得更新。
您可以將代理伺服器自動配置檔案放在 server- root/proxy-serverid/pac/ 目錄中。在瀏覽器中,輸入代理伺服器自動配置檔案的 URL,方式是在 [Proxies] 標籤中鍵入該檔案的 URL。代理伺服器 URL 的格式如下:
http://proxy.domain:port/URI
例如,URL 可能為 http://proxy.example.com。如果您確實使用了 URI,亦即緊隨在 host:port 組合之後的 URL 部分,則您可以使用範本來控制對各種自動配置檔案的存取。例如,若建立了名為 /test 的 URI,且其包含名為 /proxy.pac 的自動配置檔案,便可以建立具有資源式樣 http://proxy.mysite.com:8080/test/.* 的範本。接著,您可以使用該範本來設定該目錄專屬的存取控制。
您可以建立多個自動配置檔案,並透過不同的 URL 來存取這些檔案。下表列出一些範例 URI,以及用戶端用來存取這些 URI 的 URL。
表 17–1 範例 URI 與對應的 URL
URI (路徑) |
代理伺服器的 URL |
---|---|
/ |
http://proxy.mysite.com |
/employees |
http://proxy.mysite.com/employees |
/group1 |
http://proxy.mysite.com/group1 |
/managers |
http://proxy.mysite.com/managers |
由於反向代理伺服器的運作方式之故,所以將 .pac 檔案用在代理伺服器與伺服器上會非常困難。當代理伺服器收到檔案請求時,必須判斷該請求是要存取本地 .pac 檔案或遠端文件。
若要將代理伺服器當做反向代理伺服器 (除了維護與提供 .pac 檔案功能之外),請編輯 obj.conf 檔案,以確定 NameTrans 函數的順序是正確的。
建立標準對映,將代理伺服器當做反向代理伺服器。此動作通常會告訴代理伺服器將所有請求路由至遠端內容伺服器。您可以增加代理伺服器自動配置檔案,並將它對映到特定目錄,例如 /pac。在此情況下,想要取得 .pac 檔案的任何用戶端都必須使用如下 URL:
http://proxy.mysite.com/pac
建立此對映時,請務必確定遠端內容伺服器沒有類似的目錄。
編輯 obj.conf 檔案,以確保代理伺服器自動配置檔案的指令與函數出現在其他對映之前。此指令與函數必須在最前面,因為代理伺服器通常會先執行所有 NameTrans 函數,才處理請求。然而,透過自動配置檔案,代理伺服器會立即識別路徑並傳回 .pac 檔案。
下列範例是來自使用反向代理伺服器並維護自動配置檔案的 obj.conf 檔案。
<Object name="default"> NameTrans from="file:" fn="map" to="ftp:" NameTrans from="/pac" fn="pac-map" name="file" to="/ns-home/proxy/pac/proxy.pac" NameTrans fn="redirect" from="http://foo.*" url="http://www.acme.com" NameTrans from="/ns-icons" fn="pfx2dir" dir="/ns-home/ns-icons" name="file" NameTrans fn="reverse-map" from="http://web.acme.com" to="http://proxy.acme.com:8080" NameTrans fn="map" from="http://proxy.acme.com:8080" to="http://web.acme.com" NameTrans fn="map" from="/" to="http://web.acme.com" PathCheck fn="url-check" Service fn="deny-service" AddLog fn="flex-log" name="access" AddLog fn="urldb-record" </Object>