WebSphere Application Server

Caching Proxy 管理手冊

6.0.1 版
GC40-0926-01
第 2 版(2005 年 3 月)

本版適用於:

除非在新版本中另外指出, 否則將適用於所有後續版本及修訂版。

您可以透過 IBM 業務代表或當地的 IBM 分公司訂購出版品。

Copyright International Business Machines Corporation 2005. All rights reserved.

目錄

關於本書
適合閱讀本書的人
本書中所使用的慣例與專用辭彙
協助工具
如何傳送您的意見
相關資訊
Caching Proxy 入門
概觀
新特性
使用配置與管理表單
瀏覽器需求
存取配置與管理表單
設定管理者密碼
使用配置精靈
手動編輯 ibmproxy.conf 檔
啟動與停止 Caching Proxy
在 Linux 和 UNIX 系統中自動啟動和關閉
在 Linux 和 UNIX 系統中手動啟動
在 AIX 中:
在 HP-UX 中:
在 Linux 中:
在 Solaris 中:
當做 Windows 服務啟動
當做 Windows 應用程式啟動
使用「開始」功能表
使用命令提示模式
啟動多重 Proxy 伺服器
在 Linux 和 UNIX 系統中手動關閉
關閉指令的限制
在 Windows 系統上手動關閉
在變更配置之後重新啟動
配置與調整 Caching Proxy 程序
定義伺服器
相關的指引
配置與管理表單
建立程序所有權
相關的指引
配置與管理表單
管理連線
相關的指引
配置與管理表單
調整 Proxy 伺服器程序
設定效能相關的指引
檢查其他應用程式
驗證分頁空間
調整檔案系統
調整 TCP/IP 配置
針對高負載環境調整 TCP 等候時間間隔(HP-UX、Linux、Solaris、Windows)
調整 Linux 核心程式
調整 AIX 執行緒調整變數
配置 Caching Proxy 行為
管理要求處理程序
啟動 HTTP/FTP 方法
相關的指引
配置與管理表單
定義對映規則
對映規則
配置替代伺服器
相關的指引
配置與管理表單
啟用接合重新撰寫(選用)
定義不含 JunctionPrefix 選項的接合
定義含 JunctionPrefix 選項的接合(建議的方法)
相關的指引
配置與管理表單
使用 UseCookie 做為 JunctionRewrite 的替代方案
擴充 JunctionRewrite 功能的 transmogrifier 外掛程式範例
管理本端內容的遞送
定義文件起始目錄
相關的指引
配置與管理表單
定義預設歡迎頁面
相關的指引
配置與管理表單
管理 FTP 連線
保護 FTP 檔
管理 FTP 伺服器登入
管理 FTP 目錄路徑
管理 FTP 鏈結
自訂伺服器處理程序
伺服器端併入
伺服器端併入的注意事項
伺服器端併入的配置
伺服器端併入的格式
伺服器端併入的指引
自訂錯誤訊息
即時串流通訊協定 (RTSP) 重新導向
關於 RTSP 重新導向
RTSP 限制
RTSP 加強功能
配置 RTSP 重新導向
配置標頭選項
相關的指引
配置與管理表單
關於程式設計介面
相關的指引
配置與管理表單
配置 Proxy 伺服器快取
Proxy 伺服器快取概觀
快取儲存體
快取索引
FTP 快取
DNS 快取
快取排除
快取管理
配置基本快取
1. 啟用快取
2. 配置快取儲存體
選用性的自訂
設定快取記憶體
儲存或載入快取記憶體到磁碟中
設定快取過濾器
配置快取查詢結果與動態產生的檔案
配置檔案到期與記憶體回收
配置自動預載
配置快取共用
配置日誌
控制已快取的部分
配置 URL 型快取過濾器
快取查詢回應
查詢回應快取的附加需求
快取本端提供的檔案
根據部分 URL 來快取檔案
相關的配置檔指引
維護快取記憶體內容
檔案到期
關於快取即時性的其餘資訊
關於 FTP 中的日期
配置快取即時性
記憶體回收
配置記憶體回收
將快取代理程式配置為自動重新整理及預載
設定伺服器主機名稱
使用特定檔案預載快取
使用經常快取的檔案預載快取
探查
相關的 Proxy 配置檔指引
手動啟動快取代理程式
使用共用的快取
遠端快取存取
配置遠端快取存取
配置「網際網路快取通訊協定」外掛程式
配置 ICP 外掛程式
快取動態產生的內容
針對 Proxy 快取配置 IBM WebSphere Application Server
在應用程式伺服器配置動態快取
配置應用程式伺服器配接卡
配置 Caching Proxy 執行動態快取
設定 Service 指引來啟用動態快取外掛程式
設定 ExternalCacheManager 指引來指定檔案來源
調整 Proxy 伺服器快取
選擇快取儲存體媒體
最佳化磁碟快取效能
快取記憶體回收
特定平台最佳化
AIX
HP-UX 和 Solaris
Windows
配置 Caching Proxy 安全性
關於 Proxy 伺服器安全性
伺服器保護設定
使用配置與管理表單來設定保護
使用配置檔指引來設定保護
預設保護設定
Secure Socket Layer (SSL)
SSL 訊號交換
配置安全遠端管理
金鑰與憑證管理
憑證管理中心
使用 IBM Key Manager 公用程式
建立新的金鑰資料庫、密碼及隱藏檔
接收 CA 憑證
儲存 CA 憑證
支援的密碼規格
啟用密碼硬體支援
使用 Tivoli Access Manager 外掛程式
配置
使用配置 Script 前所需的步驟
使用配置 Script
啟動 Caching Proxy 和 Access Manager 外掛程式
使用 PAC-LDAP 授權模組
概觀
鑑別
授權
輕裝備目錄存取通訊協定 (LDAP)
安裝
安全 PACD-LDAP 伺服器連線的其他需求
LDAP 用戶端套件需要 GSKit
必須為 Linux 系統設定 LD_PRELOAD 環境變數
編輯 ibmproxy.conf 檔以啟用 PAC-LDAP 授權模組
編輯 PAC-LDAP 授權模組配置檔
paccp.conf
pac.conf
pacpolicy.conf
建立 pac_ldap.cred
啟動及停止 pacd
監視 Caching Proxy
配置日誌
關於日誌
日誌檔名及基本選項
存取日誌過濾器
控制記載內容的理由
配置存取日誌過濾器
預設日誌設定
維護及保存日誌
日誌檔情節
使用伺服器活動監視器
附錄與後記
附錄A. 使用 Caching Proxy 指令
cgiparse 指令
cgiutils 指令
htadm 指令
htcformat 指令
ibmproxy 指令
附錄B. 配置檔指引
重新啟動時不變更指引
指引概觀
可接受的值
配置檔記錄的語法
Caching Proxy 指引
AcceptAnything -- 提供所有檔案
AccessLog -- 為存取日誌檔的路徑命名
AccessLogExcludeMethod -- 不顯示指定方法所要求的檔案或目錄之日誌項目
AccessLogExcludeMimeType -- 不顯示特定 MIME 類型的 Proxy 存取日誌項目
AccessLogExcludeReturnCode -- 不顯示特定回覆碼的日誌項目
AccessLogExcludeURL -- 不顯示特定檔案或目錄的日誌項目
AccessLogExcludeUserAgent -- 不顯示特定瀏覽器的日誌項目
AddBlankIcon -- 指定用來對齊目錄清單中標頭的圖示 URL
AddDirIcon -- 指定目錄清單上目錄的圖示 URL
AddEncoding -- 指定具有特定字尾的檔案進行 MIME 內容編碼
AddIcon -- 連結圖示至 MIME 內容類型或編碼類型
AddParentIcon -- 指定代表目錄清單上層目錄的圖示 URL
AddType -- 指定具有特定字尾的檔案的資料類型
AddUnknownIcon -- 指定目錄清單上不明檔案類型的圖示 URL
AdminPort -- 指定要求管理頁面或表單的埠
AggressiveCaching -- 為不能快取的檔案指定快取作業
AlwaysWelcome -- 指定是否在所要求的目錄中搜尋歡迎使用檔案
appendCRLFtoPost -- 將 CRLF 附加到 POST 要求
ArrayName -- 為遠端快取陣列命名
Authentication -- 自訂「鑑別」步驟
Authorization -- 自訂「授權」步驟
AutoCacheRefresh -- 指定是否使用快取重新整理
BindSpecific -- 指定伺服器是連結到其中一個或是所有的 IP 位址
BlockSize -- 指定快取中的區塊大小
CacheAccessLog -- 指定快取存取日誌檔的路徑
CacheAlgorithm -- 指定快取演算法
CacheByIncomingUrl -- 指定用來產生快取檔名的基礎
CacheClean -- 指定保留快取檔案的時間長度
CacheDefaultExpiry -- 指定檔案的預設有效時間
CacheDev -- 指定快取的儲存裝置
CacheExpiryCheck -- 指定伺服器是否傳回過期的檔案
CacheFileSizeLimit -- 指定要快取的最大檔案大小
CacheLastModifiedFactor -- 指定決定到期日的值
CacheLocalDomain -- 指定是否要快取本端網域
CacheMatchLanguage -- 指定傳回的快取內容之語言喜好設定
CacheMaxExpiry -- 指定快取檔案的最長使用期限
CacheMemory -- 指定快取 RAM
CacheMinHold -- 指定檔案可以使用的時間長度
CacheNoConnect -- 指定單機式快取模式
CacheOnly -- 只快取具有符合範本的 URL 的檔案
CacheQueries -- 指定快取含有問號 (?) 的 URL 的回應
CacheRefreshInterval -- 指定重新驗證快取物件的時間間隔
CacheRefreshTime -- 指定何時要啟動快取代理程式
CacheTimeMargin -- 指定要快取的檔案使用期限下限
CacheUnused -- 指定保留未使用之快取檔案的時間長度
Caching -- 啟用 Proxy 快取功能
CdfAware -- 指定這個 Caching Proxy 實例作為 Content Distribution Framework 的一部分
CdfRestartFile -- 指定要儲存檔名與 url 對映的檔案
CompressAge -- 指定何時壓縮日誌
CompressCommand -- 指定壓縮指令與參數
CompressDeleteAge -- 指定何時刪除日誌
ConfigFile -- 指定其他配置檔的名稱
ConnThreads -- 指定連線管理要用的連線執行緒數目
ContinueCaching -- 指定一個檔案中有多少部分需要快取
DefinePicsRule -- 提供內容過濾規則
DefProt -- 為符合範本之要求指定預設保護設定
DelayPeriod -- 指定要求之間的暫停功能
DelveAcrossHosts -- 指定跨網域的快取功能
DelveDepth -- 指定在快取時要跟隨鏈結到什麼程度
DelveInto -- 指定快取代理程式是否跟隨鏈結
DirBackgroundImage -- 指定背景影像給目錄清單
DirShowBytes -- 顯示目錄清單中小型檔案的位元組計數
DirShowCase -- 在目錄清單上以區分大小寫的方式排序檔案
DirShowDate -- 在目錄清單顯示上次修改的日期
DirShowDescription -- 在目錄清單中顯示檔案的說明
DirShowHidden -- 在目錄清單中顯示隱藏檔案
DirShowIcons -- 在目錄清單中顯示圖示
DirShowMaxDescrLength -- 指定目錄清單說明的最大長度
DirShowMaxLength -- 設定目錄清單中檔案名稱的最大長度
DirShowMinLength -- 設定目錄清單中檔案名稱的最小長度
DirShowSize -- 在目錄清單中顯示檔案大小
Disable -- 停用 HTTP 方法
DisInheritEnv -- 指定哪些環境變數不由 CGI 程式繼承
DNS-Lookup -- 指定伺服器是否查閱用戶端主機名稱
Enable -- 啟用 HTTP 方法
EnableTcpNodelay -- 啟用 TCP NODELAY Socket 選項
Error -- 自訂「錯誤」步驟
ErrorLog -- 指定用來記載伺服器錯誤的檔案
ErrorPage -- 為特定的錯誤狀況指定一個自訂的訊息
預設值
EventLog -- 指定事件日誌檔的路徑
Exec -- 針對符合的要求執行 CGI 程式
ExportCacheImageTo -- 將快取記憶體匯出至磁碟
ExternalCacheManager -- 從 IBM WebSphere Application Server 配置動態快取的 Caching Proxy
Fail -- 拒絕符合的要求
flexibleSocks -- 啟用有彈性的 SOCKS 實作
FTPDirInfo -- 產生目錄的歡迎使用或說明訊息
ftp_proxy -- 指定針對 FTP 要求的另一部 Proxy 伺服器
FTPUrlPath -- 指定如何解譯 FTP URL
Gc -- 指定記憶體回收
GCAdvisor -- 自訂記憶體回收程序
GcHighWater -- 指定何時開始記憶體回收
GcLowWater -- 指定何時結束記憶體回收
gopher_proxy -- 指定 gopher 要求的另一個 Proxy 伺服器
GroupId -- 指定群組 ID
HeaderServerName -- 指定在 HTTP 標頭中傳回的 Proxy 伺服器名稱
Hostname -- 指定伺服器的完整網域名稱或 IP 位址
http_proxy -- 指定 HTTP 要求所用的另一個 Proxy 伺服器
HTTPSCheckRoot -- 過濾 HTTPS 要求
ICP_Address -- 指定 ICP 查詢的 IP 位址
ICP_MaxThreads -- 指定 ICP 查詢的最大執行緒數
Occupier -- 指定 ICP 叢集的成員
ICP_Port -- 指定用於 ICP 查詢的埠號
ICP_Timeout -- 指定 ICP 查詢的最大等待時間
IgnoreURL -- 指定不重新整理的 URL
imbeds -- 指定是否要使用伺服器端併入處理程序
ImportCacheImageFrom -- 從檔案匯入快取記憶體
InheritEnv -- 指定 CGI 程式繼承的環境變數
InputTimeout -- 指定輸入逾時
JunctionReplaceUrlPrefix -- 當搭配 JunctionRewrite 外掛程式使用時,取代 URL 而不是插入字首
JunctionRewrite -- 啟用 URL 重新撰寫
JunctionRewriteSetCookiePath -- 當搭配 JunctionRewrite 外掛程式時,重新撰寫 Set-Cookie 標頭中的路徑選項
JunctionSkipUrlPrefix -- 當搭配 JunctionRewrite 外掛程式時,跳過重新撰寫已包含字首的 URL
KeepExpired -- 修改 Proxy 快取的記憶體回收
KeyRing -- 指定金鑰環資料庫的檔案路徑
KeyRingStash -- 指定金鑰環資料庫密碼檔的檔案路徑
LimitRequestBody -- 指定 PUT 或 POST 要求中的主體大小上限
LimitRequestFields -- 指定用戶端要求中的標頭數上限
LimitRequestFieldSize -- 指定標頭長度和要求行上限
ListenBacklog -- 指定伺服器要承載的接收待辦用戶端連線數目
LoadInlineImages -- 控制內含影像的重新整理
LoadTopCached -- 指定要重新整理的常用網頁數
LoadURL -- 指定要重新整理的 URL
Log -- 自訂「記錄」步驟
LogArchive -- 指定日誌保存的行為
LogFileFormat -- 指定存取日誌格式
LogToGUI(僅限 Windows)-- 在伺服器視窗顯示日誌項目
LogToSyslog -- 指定是否傳送存取資訊給系統日誌(只限 Linux 和 UNIX)
Map -- 將符合的要求變更成新的要求字串
MaxActiveThreads -- 指定作用中執行緒的最大數目
MaxContentLengthBuffer -- 指定存放動態資料的緩衝區大小
MaxLogFileSize -- 指定每一日誌檔的大小上限
MaxPersistRequest -- 指定持續性連線中要接收的要求數量上限
MaxQueueDepth -- 指定要置於佇列中的最大 URL 數目
MaxRuntime -- 指定快取代理程式執行的時間量上限
MaxSocketPerServer -- 指定伺服器的最大開啟 Socket 數目
MaxUrls -- 指定要重新整理的最大 URL 數目
Member -- 指定這個陣列的成員
Midnight -- 指定要用來保存日誌的 API 外掛程式
NameTrans -- 自訂「名稱轉換」步驟
NoBG -- 在前景中執行 Caching Proxy 程序
NoCaching -- 指定不快取那些含有符合範本的 URL 的檔案
NoLog -- 不顯示與範本相符的特定主機或網域的日誌項目
no_proxy -- 直接連接到網域的範本
NoProxyHeader -- 指定要攔阻的用戶端標頭
NumClients -- 指定要使用的快取代理程式執行緒數目
ObjectType -- 自訂「物件類型」步驟
OutputTimeout -- 指定輸出逾時
PacFilePath -- 指定含有 PAC 檔的目錄
Pass -- 指定接受要求的範本
PersistTimeout -- 指定用戶端傳送另一個要求的等待時間
PICSDBLookup -- 自訂 PICS 標籤擷取步驟
PidFile(只適用於 Linux 和 UNIX)-- 指定用來儲存 Caching Proxy 之程序 ID 的檔案
外掛程式模組指引
Port -- 指定伺服器用來接收要求的埠
PostAuth -- 自訂 PostAuth 步驟
PostExit -- 自訂 PostExit 步驟
PreExit -- 自訂 PreExit 步驟
Protect -- 啟動符合範本之要求的保護設定
Protection -- 定義配置檔中已指名的保護設定
保護副指引 -- 指定資源組的保護方式
Proxy -- 指定 Proxy 通訊協定或反向 Proxy
ProxyAccessLog -- 為 Proxy 存取日誌檔的路徑命名
ProxyAdvisor -- 自訂 Proxy 要求的服務
ProxyForwardLabels -- 指定 PICS 過濾功能
ProxyFrom -- 使用 From: 標頭來指定用戶端
ProxyIgnoreNoCache -- 略過重新載入要求
ProxyPersistence -- 允許持續性連線
ProxySendClientAddress -- 產生 Client-IP: 標頭
ProxyUserAgent -- 修改 User Agent 字串
ProxyVia -- 指定 HTTP 標頭的格式
ProxyWAS -- 指定要求傳給 WebSphere Application Server
PureProxy -- 停用專用的 Proxy
PurgeAge -- 指定日誌的年限
PurgeSize -- 指定日誌保存檔的大小限制
RCAConfigFile -- 指定 ConfigFile 的別名
RCAThreads -- 指定每個埠的執行緒數目
ReadTimeout -- 指定連線的時間限制
Redirect -- 指定傳給另一個伺服器的要求範本
ReversePass -- 截取自動重新導向的要求
RewriteSetCookieDomain -- 指定需要重新撰寫的網域型樣
RTSPEnable -- 啟用 RTSP 重新導向
rtsp_proxy_server - 指定重新導向的伺服器
rtsp_proxy_threshold -- 指定重新導向到快取記憶體之前的要求數目
rtsp_url_list_size -- 指定 Proxy 記憶體中的 URL 數目
ScriptTimeout - 指定 Script 的逾時設定
SendHTTP10Outbound -- 為 Proxy 要求指定通訊協定版本
SendRevProxyName -- 在 HOST 標頭指定 Caching Proxy 主機名稱
ServerConnGCRun -- 指定執行記憶體回收執行緒的間隔
ServerConnPool -- 指定來源伺服器的連線共用
ServerConnTimeout -- 指定最大非現行期間
ServerInit -- 自訂「伺服器起始設定」步驟
ServerRoot -- 指定安裝伺服器程式的目錄
ServerTerm -- 自訂「伺服器終止」步驟
Service -- 自訂「服務」步驟
SignificantURLTerminator -- 指定 URL 要求的終止碼
SMTPServer(僅限 Windows)-- 設定 sendmail 常式的 SMTP 伺服器
SNMP -- 啟用及停用 SNMP 支援
SNMPCommunity -- 為 SNMP 提供安全性密碼
SSLCaching -- 啟用安全要求的快取
SSLCertificate -- 指定憑證的金鑰標籤
SSLCryptoCard -- 指定已安裝的密碼卡
SSLEnable -- 指定在埠 443 上接收安全要求
SSLForwardPort -- 指定用於 HTTP SSL 升級的埠
SSLOnly -- 停用 HTTP 要求的接收程式執行緒
SSLPort -- 指定非預設的 HTTPS 接聽埠
SSLTunneling -- 啟用 SSL 通道作業
SSLVersion -- 指定 SSL 版本
SSLV2Timeout -- 指定 SSLV2 階段作業到期之前的等待時間
SSLV3Timeout -- 指定 SSLV3 階段作業到期之前的等待時間
SuffixCaseSense -- 指定字尾定義是否有大小寫區分
TLSV1Enable -- 啟用 Transport Layer Secure 通訊協定
Transmogrifier -- 自訂「資料操作」步驟
TransmogrifiedWarning -- 傳送警告訊息至用戶端
TransparentProxy -- 在 Linux 或 AIX 上啟用透通式 Proxy
UpdateProxy -- 指定快取目的地
UserId -- 指定預設的使用者 ID
V2CipherSpecs -- 列出 SSL 2 版支援的密碼規格
V3CipherSpecs -- 列出 SSL 3 版支援的密碼規格
WebMasterEMail -- 設定電子郵件位址來接收選取伺服器報告
WebMasterSocksServer(僅限 Windows)-- 設定 sendmail 常式的 Socks 伺服器
Welcome -- 指定歡迎使用檔案的名稱

  1. 探查

關於本書

本前言說明本書的讀者與目的、其內容編制、協助工具特性、慣例與專用辭彙,以及相關的文件。

適合閱讀本書的人

Caching Proxy 管理手冊一書是針對熟悉作業系統及提供網際網路服務的資深網路及系統管理員所撰寫的。先前操作 Caching Proxy 的經驗並非必要。

這本書並不是要支援上一版的 Caching Proxy。

本書中所使用的慣例與專用辭彙

本說明文件使用以下的排版及輸入慣例。

表 1. 本書所使用的慣例
慣例 意義
粗體 提到圖形式使用者介面 (GUI) 時,粗體字指出功能表、功能表項目、標籤、按鈕、圖示及資料夾。也可用來強調可能會與前後文字混淆的指令名稱。
等寬字體 指出您必須在命令提示字元之下輸入的文字。等寬字體也表示螢幕文字、程式碼範例及檔案摘錄。
斜體字 指出您必須提供的變數值(例如,您提供 fileName 的檔名)。斜體字也表示強調及書名。
Ctrl-x 其中 x 是按鍵的名稱,指出控制字元順序。例如,Ctrl-c 表示按住 Ctrl 鍵,同時按 c 鍵。
Return 指出標示為 Return、Enter 或左箭號的按鍵。
% 代表不需要 root 許可權之指令的 Linux(TM) 和 UNIX(R) command-shell 提示字元。
# 代表需要 root 許可權之指令的 Linux 和 UNIX command-shell 提示字元。
C:\ 代表 Windows(R) 命令提示模式。
輸入指令 當指示您「輸入」或「發出」指令時,請輸入指令,然後按 Return。 比方說,「輸入 ls 指令」指示表示在命令提示字元之下輸入 ls,然後按 Return。
[ ] 在語法說明中含括選用性的項目。
{ } 在語法說明中含括必須從中選擇一個項目的清單。
| 在語法說明中,以 { }(大括弧)括住選項清單中的個別項目。
... 語法說明中的省略符號,表示前一個項目可重複一或多次。範例中的省略符號, 則表示為力求簡潔而省略範例資訊。

協助工具

協助工具特性可協助身體殘障的使用者(如行動不便或視力不佳的使用者)順利使用軟體產品。 以下是 WebSphere(R) Application Server 6.0.1 版中的主要協助工具特性:

如何傳送您的意見

您的意見非常重要,它可以協助我們提供最準確、品質最好的資訊。 如果您對本書或有關 WebSphere Application Server 的 Edge Components 之其他說明文件有任何意見:

相關資訊

Caching Proxy 入門

這個部分提供 Caching Proxy 元件的概觀、使用配置與管理表單以及「配置精靈」的指示、手動編輯 ibmproxy.conf 檔的指示,以及啟動與停止 Proxy 伺服器的程序。

這個部分包含下列各主題

概觀

使用配置與管理表單

使用配置精靈

手動編輯 ibmproxy.conf 檔

啟動與停止 Caching Proxy

概觀

Caching Proxy 由用戶端截取資料要求,從內容主機擷取所需的資訊,然後將該內容遞送回用戶端。 通常,要求是提供給儲存在 Web 伺服器機器的文件(也稱為來源伺服器或內容主機)並經由「超文字轉送通訊協定」(HTTP) 來遞送。 然而,您能配置 Caching Proxy 以處理其他通訊協定,例如檔案傳輸協定 (FTP) 與 Gopher。

在將內容遞送給要求者之前,Caching Proxy 會先將可快取的內容儲存在區域快取記憶體中。 可快取的內容包含靜態 Web 頁面與動態 JavaServer 頁面(JSP,動態產生但經常變更片段的頁面)。 快取可直接從區域快取記憶體來遞送內容,讓 Caching Proxy 能夠滿足後續需要相同內容的要求,這樣會比再次從內容主機擷取內容來得快速。

註:
Caching Proxy 適用於所有支援的平台,但在 Itanium 2 和 AMD Opteron 64 位元處理器上執行的平台除外。

新特性

Caching Proxy 管理手冊包括 6.0 版及 5.0 版之後版次(5.0.1、5.0.2、5.1 和 5.1.1)的新特性、新支援平台和更正更新項目。 這裡列出最重要的新特性(6.0 版及 5.0 版之後版次)。

註:
  1. 如果需要支援的軟硬體需求的詳細資訊,請參閱 Edge Component 的概念、規劃和安裝中的「Edge 元件需求」一章。
  2. 如果需要第 6 版 Edge Components 的最系統需求資訊,請存取下列 WebSphere Application Server 網頁 http://www.ibm.com/software/webservers/appserv/doc/latest/prereq.html

使用配置與管理表單

Caching Proxy 搭配可用來要求用戶端及配置 Proxy 伺服器的 HTML 表單使用。 這些表單會執行 CGI 程式,以編輯區域 Proxy 伺服器配置檔 ibmproxy.conf。如果要使用這些表單, 必須執行 Proxy 伺服器並配置它,才能將這些表單從它們所在的區域目錄傳遞出去。

註:
Caching Proxy 適用於所有支援的平台,但在 Itanium 2 和 AMD Opteron 64 位元處理器上執行的平台除外。

依預設,是以包含在可存取配置與管理表單的 ibmproxy.conf 檔中的 Pass 指引來安裝 Caching Proxy。當用戶端要求這個 Proxy 伺服器預設的首頁時,會提供 Frntpage.html。這個頁面包含了鏈結到配置與管理表單起始頁面 wte.html 的超文字鏈結。

配置與管理表單是受保護的,在提供之前需要用戶端鑑別。有關管理者 ID 和密碼的指示, 請參閱設定管理者密碼

瀏覽器需求

用來存取配置與管理表單的 Web 瀏覽器必須支援下列各項:

建議的瀏覽器 Mozilla 1.4 或 Mozilla 1.7(Linux 和 UNIX 系統)或 Internet Explorer(Windows 系統)。 請參閱 Edge Components 的概念、規劃與安裝,以取得用來檢視「配置」和「管理」表單的其他瀏覽器相關資訊。

註:
  1. 在 64-bit 位元 PowerPC Linux 系統中,不可能利用 Mozilla 瀏覽器來存取「配置與管理」表單,因為這個架構沒有可用的 JDK。 您可以從含有支援的 Web 瀏覽器的不同機器中存取「配置與管理」表單。
  2. 如果啟動管理主控台時,出現兩次登入提示,可能是 Internet Explorer 中的 Java 設定不正確。 如果要在 Internet Explorer 中更正這個問題,請選取工具 > 網際網路 > 進階,再取消選取使用 Java 2 1.4.X 版勾選框。

存取配置與管理表單

如果要存取配置與管理表單,請執行下列動作:

  1. 請確定 Proxy 伺服器正在執行。關於啟動 Proxy 伺服器的指示,請參閱啟動與停止 Caching Proxy
  2. 導引 HTTP 瀏覽器要求您 Proxy 伺服器的首頁 (Frntpage.html) 或是配置與管理起始頁 (wte.html)。
    註:
    這個頁面視您 Proxy 伺服器的實際對映規則而定,並且可以修改括弧內所顯示的預設頁面。
    http://your.server.name[:port][/directory][/page.html]
    
    其中
  3. 按一下配置與管理表單,以取得伺服器配置表單。 系統提示您輸入管理者的使用者名稱及密碼。請輸入授權使用者名稱及密碼。即開啟 Caching Proxy 配置用戶端視窗。
    註:
    1. 在顯示主要頁面之後,左邊導覽框的內容可能還需要數秒鐘才能載入完畢。
    2. 在 Windows 2003 系統中,要求管理表單 (CGI Script) 的連線可能會在連線完成之前收到重設。 因此,瀏覽器可能會報告未收到任何資料或顯示頁面無法使用的訊息。 如果要避免這個問題,請將 MaxActiveThreads 值增加為大於 200,或將 ConnThreads 值增加為大於 50,以解決重設的連線。 請參閱MaxActiveThreads -- 指定作用中執行緒的最大數目ConnThreads -- 指定連線管理要用的連線執行緒數目,以取得這些指引的詳細資訊。
  4. 左邊的導覽框顯示配置表單的五個主要種類: 按一下標題左邊的三角形指標,展開該種類的配置表單清單。 按一下表單,將它開啟。表單在輸入欄位顯示現行配置值(如果有的話);如果安裝之後未曾變更配置,那麼這些值是預設值。
  5. 在任何表單上,輸入該特定功能的配置資訊。 每份表單都會提供指示,協助您決定要作哪些變更。如果需要進一步的資訊,請按一下每一份表單頂端的說明圖示(問號 ?)。 它提供下列鏈結:
  6. 填完表單之後,請按一下送出, 以所作的變更來更新伺服器配置。送出按鈕是在各表單的輸入欄位下方。 如果您不要變更表單內容,請按一下重設, 表單上的欄位便會返回其原始值。
  7. 如果按一下送出且您的輸入被接受, 則會在上框中顯示下列訊息:
    要求的配置變更已經順利完成。
    如果輸入不被接受,則會在上框中顯示一個錯誤訊息,指出不接受哪些設定。
  8. 如果要重新啟動 Proxy 伺服器,請按一下上層頁框中伺服器重新啟動圖示 (|)。Proxy 伺服器接收重新啟動指令之後,它會停止接受來自用戶端的要求,但會完成已在處理中的任何要求。重新載入變更的配置檔之後,Proxy 會重新開始接受用戶端要求。
    註:
    使用配置與管理表單或編輯 ibmproxy.conf 檔來變更某些指引, 需要完全停止伺服器後重新啟動,變更才會生效,而非只是重新啟動。這些指引列於『表 6.』中。

設定管理者密碼

安裝 Caching Proxy 套裝軟體之後,您必須建立用來存取配置與管理表單的管理者識別及密碼。預設的 Proxy 伺服器配置會使用 webadmin.passwd 密碼檔來鑑別要求配置與管理表單的使用者,這個密碼檔在 /opt/ibm/edge/cp/server_root/protect/ 目錄(Linux 和 UNIX 系統)或 \Program Files\IBM\edge\cp\etc\ 目錄(Windows 系統)中。套裝軟體安裝不會覆寫現有的 webadmin.passwd 檔。

請使用下列指令,新增管理者項目到 webadmin.passwd 密碼檔案:

註:
管理者使用者名稱和密碼會區分大小寫,即使作業系統不區分大小寫也是如此。 請務必輸入存取「配置與管理」表單時,利用 htadm 指令來輸入的使用者名稱和密碼。

有關 htadm 指令的詳細說明,請參閱htadm 指令

使用配置精靈

「Caching Proxy 配置精靈」能讓您快速地配置已安裝的 Caching Proxy。本程式只會設定必要的重要指引, 來修改 Caching Proxy 的行為才能以代理者來運作。Proxy 伺服器需要附加配置。

如果要使用「Caching Proxy 配置精靈」,請執行下列動作:

  1. 啟動「配置精靈」。

    在 Windows 系統中:按一下開始 -> 程式集 -> IBM WebSphere -> Edge Components -> Caching Proxy -> 配置精靈

    在 Linux 和 UNIX 系統中:輸入 /opt/ibm/edge/cp/cpwizard/cpwizard.sh 指令

  2. 選取 Proxy 伺服器用來接收 HTTP 要求的網路埠。
  3. 輸入目標內容伺服器的名稱。
  4. 輸入 Proxy 伺服器管理者的使用者 ID 與密碼。
註:
  1. 「配置精靈」設定下列指引:
    Port port
    Proxy /* http://content server : port
  2. 如果是用「配置精靈」來配置 Proxy 伺服器,若要啟用 SSL,您必須建立一項對映規則來 Proxy 透過埠 443 接收的要求。 如果需要詳細資訊,請參閱定義對映規則

    範例:

    Proxy /* http://content server :443

    Proxy /* https://content server :443

限制:在 Linux 系統中,「Caching Proxy 配置」精靈的鍵盤捷徑無法運作。

手動編輯 ibmproxy.conf 檔

您可以手動編輯 ibmproxy 配置檔來配置 Caching Proxy,或利用「配置」和「管理」表單來手動配置 Caching Proxy。

配置檔是由陳述式(亦即指引)所組成。如果要變更配置,請藉由修改指引來編輯配置檔並儲存變更。幾乎所有的文字編輯程式都能用來編輯配置檔,例如 emacs 與 vi。

註:
請勿使用「Solaris 一般桌面環境」(CDE) 內含的文字檔案編輯程式。Solaris 編輯程式有時會修改擁有檔案的群組並變更檔案鏈結內容,而使得配置與管理表單無法寫入配置檔。

除非變更了『表 6.』中識別的其中一個指引,否則在您重新啟動伺服器時配置檔變更就會生效。如果您變更了該清單中的一個指引, 則必須停止伺服器再重新啟動。相關指示,請參閱啟動與停止 Caching Proxy

附錄B. 配置檔指引說明每一個配置檔指引而且提供關於語法的詳細資料。

啟動與停止 Caching Proxy

Caching Proxy 是設計以最少的操作員介入之背景處理程序來不斷地執行。一般來說,Proxy 伺服器是在機器的起動循環期間啟動,僅在需要維護時才停止。必要時,或許要手動啟動 Proxy 伺服器。您也能傳遞重新啟動指示給 Proxy 伺服器,這樣能在不中斷作用中的用戶端連線之情況下,有效地停止 Proxy 伺服器接著再啟動它。

註:
Caching Proxy 適用於所有支援的平台,但在 Itanium 2 和 AMD Opteron 64 位元處理器上執行的平台除外。

在 Linux 和 UNIX 系統中自動啟動和關閉

在 Linux 和 UNIX 系統中,當您安裝好 Caching Proxy 之後,會將 ibmproxy 起始設定 Script 和相關聯的符號鏈結放在適當的 /etc/ 目錄中。接著會整合這些 Script 至作業系統的啟動與關閉常式。 您可以編輯 ibmproxy Script 及變更 ibmproxy 指令選項, 來變更自動重新啟動的配置設定。

註:
Solaris 檔案描述子的限制

可能會因為 Solaris 對檔案描述子的系統面限制, 導致 Caching Proxy 起始設定 Script 無法設定想要的最大檔案描述子數目。如果系統面最大值小於 Caching Proxy 起始設定 Script 中的設定, 就會使用系統面限制。您可以變更檔案描述子限制以避免由於值太低(小於 1024)而產生的 Proxy 效能問題。 發出 ulimit 指令來檢視目前可用的描述子數目。 如果值小於 1024,請增加檔案描述子限制。 如果要增加檔案描述子限制到 1024,請新增下面一行到 /etc/system 檔:

set rlim_fd_cur=0x400

停用自動啟動及關閉

如果要停用自動啟動及關閉,請執行下列動作:

在 Linux 和 UNIX 系統中手動啟動

不管啟動方法為何,最後還是會直接從命令提示模式或是 Script 內呼叫 ibmproxy 指令。有關 ibmproxy 指令的詳細說明,請參閱ibmproxy 指令。僅舉出最常使用的引數所遵循的範例。

在 AIX 中:

在 HP-UX 中:

在 Linux 中:

在 Solaris 中:

當做 Windows 服務啟動

如果 Caching Proxy 是安裝成 Windows 服務,它啟動的方式就像任何其他 Windows 服務的啟動方式一樣:

  1. 按一下開始 -> 設定 (Windows 2000) -> 控制台
  2. 控制台視窗中,按兩下系統管理工具 -> 服務
  3. 服務視窗中,強調顯示 Caching Proxy
  4. 按一下啟動來起始 Caching Proxy 服務。

如果 Caching Proxy 已安裝成服務,它可以配置成在 Windows 啟動時自動啟動。在這種情況下,您就不必在 Proxy 提供要求前先登入。 如果要讓 Proxy 自動啟動,請執行下列動作:

  1. 按一下開始 -> 設定 (Windows 2000) -> 控制台
  2. 控制台視窗中,按兩下系統管理工具 -> 服務
  3. 服務視窗中,強調顯示 Caching Proxy
  4. 按一下自動圓鈕,然後按一下啟動,於 Windows 啟動時自動起始 Caching Proxy 服務。

重新整理 PATH 環境變數

如果在服務視窗中 Caching Proxy 被標示成啟動, 但是 Proxy 沒有作用,那麼可能在安裝 Proxy 之後沒有重新啟動機器。 如果設定 Caching Proxy 服務與桌面互動,那麼無法重新啟動也會使下列錯誤訊息出現在蹦現框: 訊息型錄錯誤:訊息型錄無法載入或無效

您必須重新啟動機器,才會重新整理 Windows 登錄中 PATH 環境變數的值。如果沒有重新整理登錄,PATH 變數有可能顯示正確的 Caching Proxy 和 GSK7 路徑,但無法正常運作。

註:
當 Caching Proxy 和其他應用程式(如網路檔案系統)同時當成服務來執行時,Windows 系統會有一個潛在的衝突。Caching Proxy 有時無法解譯內含檔案系統應用程式(同時執行為一項服務)所擁有遠端磁碟機的路徑。

在 Windows 的 PATH 環境變數中, 如果檔案系統服務的路徑出現在 Caching Proxy 服務的路徑之前,就可能會發生問題。變更 PATH 變數,將檔案系統服務放在設定尾端附近可解決這個問題。

如果應用程式不是當成 Windows 服務來執行,這個問題將不會影響由該應用程式所控制的遠端磁碟機。比方說,Caching Proxy 可以存取位於其他 Windows 機器上,可透過區域網路 (LAN) 看到的共用磁碟機。

當做 Windows 應用程式啟動

使用「開始」功能表

當 Caching Proxy 安裝成 Windows 應用程式時,安裝程序會建立一個 Caching Proxy 項目,做為開始功能表的子功能表。如果要將 Caching Proxy 當成應用程式啟動, 請按一下開始 -> 程式集 -> IBM WebSphere -> Edge Components -> Caching Proxy

以現行配置設定,這個啟動程序執行 Proxy 伺服器。如果您要在啟動時指定其他設定,請使用指令啟動程序(請參閱下節)。

使用命令提示模式

如果要從任何 Windows 或 DOS 命令提示模式啟動伺服器,請使用 ibmproxy 指令。如果您自安裝伺服器之後尚未關閉並重新啟動 Windows, 請輸入這個指令的完整路徑名稱,如下所示(依預設值):

c:\Program Files\IBM\edge\cp\bin\ibmproxy.exe

ibmproxy 指令是以現行配置設定來啟動伺服器。 如果您在安裝之後尚未變更伺服器配置,則現行配置是根據安裝期間所輸入的資訊以及預設的選項。

即使已安裝 Caching Proxy 成為一項服務來執行,ibmproxy 指令還是會以應用程式來啟動伺服器。 如果要強迫伺服器以應用程式的方式來執行, 您也可以指定指令選項 -noservice。 在執行時其他指令選項會變更配置設定。

啟動多重 Proxy 伺服器

目前能執行的多重 Proxy 伺服器實例,但每一個實例都必須在個別的埠上接收。在 AIX 系統上,您只能以 SRC 啟動一個實例。必須為全部的伺服器實例指定唯一的配置檔, 因為配置檔識別埠號,而特定機器上每一個伺服器所用的埠號必須不同。 如果要啟動額外的伺服器實例(當至少有一個實例已經執行時), 請輸入下列指令:

其中 other_config_file 是唯一的配置檔。

啟動伺服器的多個實例時, 請記錄針對每個實例所顯示的程序 ID。這些 ID 是停止伺服器的特定實例所必要的。

註:
在執行多重伺服器實例的 Linux 系統上,指令 /etc/rc.d/init.d/ibmproxy stop 只會停止已啟動的最後一個伺服器。必須個別停止其他實例。請參閱在 Linux 和 UNIX 系統中手動關閉,以取得相關資訊。

在 Linux 和 UNIX 系統中手動關閉

如果要停止伺服器:

表 2. Linux 和 UNIX 系統的啟動和停止方法
啟動方法 停止方法
從 /etc/inittab(在 AIX 上) 輸入 stopsrc -s ibmproxy
從 /sbin/init.d(在 HP-UX 上) 輸入 /sbin/init.d/ibmproxy stop
從 /etc/rc.d/init.d(在 Linux 上) 輸入 /etc/rc.d/init.d/ibmproxy stop
ibmproxy
  1. 找出 ibmproxy 程序 ID:在 AIX 上,輸入 ps -aef | grep "ibmproxy"。在 Linux 上,輸入 ps -aux | grep ibmproxy | grep server_ID。在 Solaris 和 HP-UX 上,輸入 ps -ef | grep "ibmproxy"
  2. 停止 ibmproxy 程序:請輸入 kill process_id

如果要停止機器上的全部伺服器:請輸入 killall ibmproxy

ibmproxy -nobg 輸入 ctrl-c
ibmproxy -r -other_config_file(在 AIX 上) 輸入 stopsrc -s ibmproxy -p process_id
ibmproxy -r -other_config_file(在 Linux)
  1. 尋找 ibmproxy 程序 ID:請輸入 ps aux | grep ibmproxy | grep process_id
  2. 停止 ibmproxy 程序:請輸入 kill process_id

如果要停止伺服器,請在根目錄提示中輸入:

關閉指令的限制

使用關閉指令時有下列限制:

在 Windows 系統上手動關閉

您可以使用和停止其他 Windows 程式的同一種方式來停止 Caching Proxy 伺服器。

如果 Proxy 安裝成一項服務,請執行下列動作:

  1. 按一下開始 -> 設定 (Windows 2000) -> 控制台
  2. 控制台視窗中,按兩下系統管理工具 -> 服務
  3. 服務視窗中,強調顯示 Caching Proxy
  4. 按一下停止來停止 Caching Proxy 服務。

如果 Proxy 不是安裝成一項服務,請執行下列其中一個動作停止 Caching Proxy:

在變更配置之後重新啟動

在變更伺服器配置之後(使用「配置與管理」表單或編輯 ibmproxy.conf 檔), 您必須重新啟動伺服器,變更才會生效。 大部分情況下,您不必先停止伺服器即可重新啟動伺服器, 但這種簡單的重新啟動無法重新整理部分設定。如果需要詳細資訊,請參閱『表 6.』。

如果要在沒有先停止伺服器的情況下重新啟動伺服器,請按一下任何「配置與管理」表單上的重新啟動按鈕, 或輸入下列指令:ibmproxy -restart

配置與調整 Caching Proxy 程序

這個部分解釋 Caching Proxy 元件與作業系統、電腦硬體及網路相互作用的方法。它也提供配置交談的程序。這些 Proxy 伺服器配置的元素通常是由系統管理員來管理, 且必須謹慎地與網路資源(例如,IP 位址與主機名稱)及系統資源(例如, 可用記憶體與 CPU 循環)協調。

這個部分包含下列各主題

定義伺服器

建立程序所有權

管理連線

調整 Proxy 伺服器程序

定義伺服器

Caching Proxy 通常是在配置來以網路伺服器來執行的主機系統上,以背景處理程序來執行。這個程序與主要電腦系統上的一或所有作用中的 「網際網路通訊協定」(IP) 位址相關聯(連結至)。它在指定的埠上接收不同的「網際網路通訊協定」(例如,FTP 與 HTTP),並以符合其行為配置的方式來執行有關這些要求的動作。(如果需要詳細資訊,請參閱配置 Caching Proxy 行為。)

註:
Caching Proxy 適用於所有支援的平台,但在 Itanium 2 和 AMD Opteron 64 位元處理器上執行的平台除外。

依預設,Caching Proxy 會取用其主機系統的名稱。您可以刻意地指定 Proxy 伺服器的主機名稱以置換這個預設行為。為了將 Caching Proxy 連結至特定的 IP 位址,必須將 Proxy 伺服器的主機名稱變更為同於該 IP 位址。

註:
在 Proxy 伺服器試圖連結至 IP 位址,且主機名稱並未設定為可用的 IP 位址之情況下, 連結將會失敗,且 Proxy 伺服器將在所有可用的 IP 位址上接收。

Proxy 伺服器的主機名稱並不影響解析用戶端資料傳輸的方法。Proxy 伺服器不會在 HTTP 要求的標頭比較它自己的主機名稱與主機名稱引數值。Proxy 伺服器的主機名稱有時會併入動態產生的區域內容頁,例如錯誤訊息。也會倒退傳遞至所要求的用戶端,作為 HTTP 標頭中的 Via 引數值。

您可以在目的地伺服器上傳遞要求之前配置 Proxy 伺服器,以 Proxy 伺服器的主機名稱來取代要求用戶端的主機名稱。如此會強迫目的地伺服器透過 Proxy 伺服器來維護通訊通道,而不是與用戶端建立直接連線。

您可以指定主機系統上 Proxy 伺服器檔案的實體位置、Proxy 伺服器參照其本身的名稱, 以及埠(它可在這些埠上接收 ServerRootHostnamePort 指引值),以定義 Proxy 伺服器程序。 如果主機有多重 IP 位址,您可以將 BindSpecific 指引值設為 On,將 Hostname 指引值設為等於 IP 位址,來將 Proxy 伺服器連結至特定的位址。

管理埠提供存取配置與管理表單與維護伺服器的方法。如果要透過管理埠來存取 Proxy 伺服器,請指定 AdminPort 指引值。在管理埠上接收到的要求不會與在標準埠上接收到的要求一起佇列。可以撰寫對映規則以允許透過這個埠來存取配置與管理表單。

當啟用 BindSpecific 指引時,會將 Caching Proxy 連結至 Port 指引所指定的埠及 Hostname 指引值所衍生的 IP 位址。AdminPort 指引所指定的埠會連結至系統中所有可用的 IP 位址。

如果要置換正在執行的伺服器預設名稱,例如 IBM-PROXY 或 IBM_HTTP_SERVER, 請指定 HeaderServerName 指引值。這個值會置於 HTTP 回應伺服器欄位。

如果要改進 Proxy 效能,可將 PureProxy 指引值設定為 on。這樣便能完全停用所有的快取功能。

相關的指引

下列指引定義 Proxy 伺服器程序:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單編輯相關指引的值:

註:
您無法使用配置與管理表單來編輯 HeaderServerName 指引。

如果需要詳細資訊,請參閱使用配置與管理表單

建立程序所有權

當使用者(而非超級使用者 root)啟動 Caching Proxy 時,該使用者會維護與 Proxy 伺服器相關聯的所有程序之所有權。然而, 如果超級使用者 root 啟動 Caching Proxy,Proxy 伺服器內的設定使用者 ID 功能便會讀取 ibmproxy.conf 檔中的 UserId 與 GroupId 指引, 並變更程序所有權給指定的使用者和群組。這麼做以限制檔案存取並保護電腦系統。如果您變更 UserId 或 GroupId 指引, 則必須更新 Proxy 伺服器所使用的目誌目錄與其他檔案(例如,存取控制清單 (ACL))的所有權及許可權。

註:
在 Linux 系統上,只會變更負責接收連線的程序與執行緒的所有權。工作流程內負責其他活動的程序及執行緒還是為 root 所擁有。所有程序及執行緒都會接收程序 ID (PID) 號碼。ps 指令可列出所有程序 ID,不管它們是否與程序或執行緒相關聯。

您可以指定使用者識別、群組識別以及檔案位置(該檔案以 UserIdGroupId 以及 PidFile 指引值來紀錄程序 ID), 來建立 Proxy 伺服器程序的所有權。

如果要強迫 Proxy 伺服器程序以前景處理程序來執行,可將 NoBG 指引值設定為 on。

相關的指引

下列指引會建立 Proxy 伺服器程序所有權:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單編輯相關指引的值:

註:
您無法使用配置與管理表單來編輯 NoBG 指引。

如果需要詳細資訊,請參閱使用配置與管理表單

管理連線

Caching Proxy 產生新執行緒以處理每一個用戶端要求。如果沒有可用的執行緒,Proxy 伺服器會保留要求,直到能用其他執行緒為止。隨著作用中執行緒的增加,Proxy 伺服器會耗費更多記憶體。可指定作用中執行緒的最大數量,作為 MaxActiveThreads 指引值。

接收待辦是擱置用戶端連線要求的數量, 伺服器在拒絕與新用戶端連線之前記載。這項設定根據伺服器在幾秒內能夠處理的要求數而定。伺服器在逾時之前,必須回應用戶端連線。指定能在待辦中保留的最大連線數,作為 ListenBacklog 指引值。

Proxy 伺服器能維護持續性主從式連線。透過持續性連線,伺服器可接受來自用戶端的多重要求,並且透過相同的 TCP/IP 連線來傳送回應。 使用持續性連線可減少用戶端的潛伏期及降低 Proxy 伺服器上 CPU 負載, 但需要增加一些額外的伺服器記憶體。 當伺服器不必為每一個要求及回應來建立個別的 TCP/IP 連線時, 整體產量會增加,當連線持續時,可以最大效率使用 TCP/IP 連線。

藉由允許重新使用 Proxy 伺服器與來源伺服器之間的現存連線, 伺服器端連線共用會引用伺服器端上持續性連線的效益。每一個重新使用的連線可節省三個 TCP 封包( 兩個三向訊號交換封包用來設定連線,而一個用來關閉連線)。 伺服器端連線共用的好處如下:

註:
建議僅在受控制的環境下使用連線共用。在來源伺服器不遵循 HTTP 1.1 的狀況下,其會降低效能。也請注意:請務必正確設定來源伺服器。 下列是 Apache 1.3.19 配置檔的簡式範例: 這些設定可讓已使用的 Web 伺服器連線保持開啟狀態,並允許 Proxy(而非來源伺服器)管理連線。因此,僅在所需的範圍內共用連線。

當啟用伺服器端連線共用時,來源伺服器的 HTTP 連線會被共用。 在 Proxy 的 SSLEnable 指引設為 on 的配置中,也共用 SSL 連線。

您可以指定每個伺服器一次能保留的最大閒置 Socket 數量、伺服器在終止閒置持續性連線前的等待時間, 以及記憶體回收執行緒檢查逾時連線的時間間隔(預設為 2 分鐘),以配置維護連線共用的方式。

定義不同連線保持開啟的時間量,作為 InputTimeout、OutputTimeout、PersistTimeout、ReadTimeout 與 ScriptTimeout 指引的值。

相關的指引

下列指引管理與 Proxy 伺服器程序的連線:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單編輯相關指引的值:

註:
  1. 您無法使用配置與管理表單來編輯 ServerConnPool、MaxsocketPerServer、ServerConnTimeout 或 ServerConnGCRun 指引。
  2. 可以從伺服器配置 -> 系統管理 -> 效能表單或伺服器配置 -> 系統管理 -> 逾時表單來編輯 PersistTimeout。

如果需要詳細資訊,請參閱使用配置與管理表單

調整 Proxy 伺服器程序

您可以適當設定及調整系統來顯著增進 Caching Proxy 的效能。下列建議如何增進設定及調整。

設定效能相關的指引

下列指引會明顯地影響 Proxy 伺服器程序的效能:

下列配置與管理表單欄位編輯相關指引的值:

檢查其他應用程式

檢查正在您系統上執行的服務程式或常駐程式,並移除非必要的服務程式或常駐程式,以增加可用的記憶體與 CPU 循環。比方說,如果您的系統執行的 Web 伺服器僅支援少數網頁, 請考慮使用 Caching Proxy 做為您唯一的 Web 伺服器。停用其他 Web 伺服器,如下所示:

驗證分頁空間

確定您的系統具有足夠的分頁空間來進行適當的作業。 系統需要的分頁空間是實體記憶體的兩倍。 可能的話,請跨多個實體磁碟機分布分頁空間。比方說,具有 512 MB 記憶體及 5 台 SCSI 磁碟機的 Netfinity 5000 伺服器,總共需要 1 GB 的分頁空間,每一台磁碟機約為 200 MB。

調整檔案系統

在 Caching Proxy 作業期間,它會建立並毀損許多檔案。如果您的 Proxy 伺服器會記錄存取(使用存取日誌、Proxy 存取日誌或快取存取日誌), 請將日誌導引至它們自己的檔案系統,以防止日誌意外地擴大時使用其他功能(例如,快取)的空間。

調整 TCP/IP 配置

Caching Proxy 對 TCP/IP 配置的變更是很敏感的。在任何作業系統上降低 TCP/IP 值都可能導致 Proxy 伺服器以非預期的方式來執行。更具體而言,如果 TCP/IP 值設定得太低,則連接到 Proxy 伺服器的用戶端,或 Proxy 連接所至的來源伺服器會重設連線。對於透過低頻寬連線(56700 bps 或更低)連接到 Proxy 伺服器的用戶端尤其是如此。如果 TCP/IP 參數必須降低,請小心處理。

針對高負載環境調整 TCP 等候時間間隔(HP-UX、Linux、Solaris、Windows)

TCP 等候時間間隔指定 Socket 在強制關閉之前,等候來自傳送者 FIN 封包的時間長度。在高承載環境下,如果大量的 Socket 在其連線關閉後仍然停留在 TIME_WAIT 狀態中,則 Proxy 伺服器可能出現延遲。減少 TCP 等候時間間隔將減少已暫停的 Socket 數,並且在高承載環境下防止 Proxy 伺服器出現延遲。建議您將間隔設定為 5 秒鐘。

如果要設定 TCP 等候時間間隔為 5 秒鐘:

調整 Linux 核心程式

Linux 核心程式中的數個限制很低且可以加以修改。 透過 /proc 檔案系統可以變更部分限制,有些部分則需要重新編譯核心程式。

備註:/proc 檔案系統是虛擬的;亦即,實際上不存在於磁碟上。 而是當做一個進入 Linux 核心程式的介面。 因為它不存在,所以在重新啟動時將失去您的輸入值。 因此,請將您要對 /proc 檔案系統所做的變更儲存在 RedHat 上的 /etc/rc.d/rc.local 檔, 或儲存在 SuSE 上的 /etc/rc.config 檔。 然後在重新啟動時固定會啟動這些變更。

部分建議如下:

如果您決定重新建置您的核心程式,僅啟用您明確需要的選項。如果您不需要特定的常駐程式,請勿執行它。

調整 AIX 執行緒調整變數

在 AIX 系統上,您可以使用系統範圍的執行緒並允許執行緒使用多個資料堆, 來提昇 Caching Proxy 的效能。效能會和作業系統的多重處理能力以及基礎作業系統的執行緒排程相關。您可以如下設定下列 AIX 執行緒調整變數, 來達到提昇效能的目的:

export AIXTHREAD_SCOPE=S
export SPINLOOPTIME=500
export YIELDLOOPTIME=100
export MALLOCMULTIHEAP=1

您可以在啟動 /usr/sbin/ibmproxy 之前就設定這些環境變數;如果您是使用 startsrc -s ibmproxy 來啟動 Proxy 伺服器,您也可以將它們加入 /etc/rc.ibmproxy 中。在調整過這些執行緒調整變數之後,SMP 系統的效能會有較明顯的提昇。不過,在某些情況下,單一處理器系統的效能也會明顯提昇。

註:
如果需要詳細資訊,請查閱 AIX 作業系統的說明文件,以取得執行緒調整變數的詳細資料。

配置 Caching Proxy 行為

這個部分解釋 Caching Proxy 元件回應用戶端要求的方法,並提供配置這個行為的程序。 這些 Proxy 伺服器配置的元素通常是由 Web 管理員來管理,且不會影響主機系統上的其他程序,或網路內的其他電腦系統。

這個部分包含下列各主題

管理要求處理程序

管理本端內容的遞送

管理 FTP 連線

自訂伺服器處理程序

配置標頭選項

關於程式設計介面

管理要求處理程序

當 Caching Proxy 收到用戶端的要求時,它會執行 URL 欄位中所指定的物件上之方法欄位中所指定的動作( 如果已啟用要求的方法)。Proxy 伺服器會依據管理者所定義的一組對映規則來解析 URL。這些對映規則會指示 Caching Proxy 以 Web 伺服器來執行, 並從本端檔案系統擷取物件,或是以 Proxy 伺服器來執行,並從來源伺服器擷取物件。

主題說明如何啟動方法定義對映規則以及配置替代 Proxy 伺服器

啟動 HTTP/FTP 方法

用戶端對伺服器的要求包含了一個方法欄位, 這個欄位指明伺服器在指定的物件上所要執行的動作。

以下是 Proxy 伺服器支援的方法清單,並說明它如何回應含有方法的用戶端要求(如果已啟用這個方法)。

註:
對 HTTP 和 FTP 要求來說,某些方法是相同的。 對 HTTP 啟用這些方法,也會對 FTP 啟用。

DELETE
Proxy 伺服器刪除 URL 所識別的物件。DELETE 允許用戶端從您的 Caching Proxy 來消除檔案。使用伺服器保護設定來定義哪些人以及可對哪些檔案使用 DELETE。詳細資訊請參閱伺服器保護設定
GET
Proxy 伺服器傳回 URL 所識別的任何資料。 如果這個 URL 是指一個可執行的程式,Proxy 即傳回程式的輸出。 這個方法能在持續性連線上處理。
HEAD
Proxy 伺服器僅傳回 URL 識別的 HTTP 文件標頭,不包含文件主體。
OPTIONS
Proxy 伺服器傳回關於 URL 所識別的要求/回應鏈結的通訊選項之資訊。這個方法允許用戶端判斷與物件相關聯的選項及基本條件, 或是伺服器的功能,而毋需對物件作任何動作或擷取物件。
POST
包含資料及 URL 的要求。Proxy 伺服器接受包含在要求中的資料,作為處理資料的 URL 所識別的新次層資源。該資源可能是資料接收程式、通往其他通訊協定的閘道,或是接受註釋的個別程式。

POST 方法是針對處理現存資源的註釋作業而設計的。這些範例包括將訊息公佈到公佈欄、新聞群組、郵件清單或類似的資源群組;提供資料區塊(例如,從表單到資料處理程式); 或經由附加作業來擴大資料庫。在 Caching Proxy 中, POST 方法是用來處理配置與管理表單。

這個方法能在持續性連線上處理。

PUT
包含資料及 URL 的要求。Proxy 伺服器會儲存 URL 中所識別的資源。如果資源已經存在, PUT 會以要求所含的資料來置換該資源。如果資源不存在,PUT 即加以建立並以要求所含的資料來加以移入。 這個方法能在持續性連線上處理。

啟用 PUT 方法能讓您使用 HTTP 和 FTP 來將檔案寫入 Caching Proxy。 由於 PUT 可讓用戶端寫入 Caching Proxy,所以您必須使用伺服器保護設定,定義哪些人可使用 PUT 及哪些檔案可使用 PUT。(請參閱伺服器保護設定。)

TRACE
Proxy 伺服器回應用戶端傳來的要求訊息。 這個方法可以讓用戶端查看要求鏈接的另一端所接收的內容, 並且用該資料來測試或診斷資訊。Proxy 回應的內容類型為 message/http。

相關的指引

下列指引會啟動 HTTP/FTP 方法:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單編輯相關指引的值:

註:
如果您停用 POST 方法, 就無法使用配置與管理表單來配置 Caching Proxy。

如果需要詳細資訊,請參閱使用配置與管理表單

定義對映規則

對映規則是配置指引,它可利用某些方式(例如,傳遞至來源伺服器 (proxied)、重新導向與拒絕)來處理對 Caching Proxy 的用戶端要求。正確地設定對映規則對於您 Caching Proxy 的正常運作來說是非常重要的。對映規則會影響下列各項:

對映規則指引使用下列表單:

rule template target [IP_address | host_name]:[port]

只有符合給定的範本與 IP 埠組合的要求才受到該規則的管理。範本可以包含萬用字元,例如,https://**/*.asp。

規則在配置檔中所顯示的順序是有意義的。除了 Map 指引之外,只要當要求符合範本,它就會被處理,且不評估後續的規則。Map 指引會取代要求中的 URL。會繼續將這項新的要求比作剩餘的對映規則。

對映規則

下列對映規則適用於符合給定的範本之用戶端要求:

下列對映規則適用於來源伺服器回應:

下列對映規則適用於 API 應用程式:

配置替代伺服器

如果要配置標準替代,請執行下列動作:

這可將埠 80 上的所有 HTTP 資料傳輸 Proxy 至來源伺服器。在管理埠輸入的資料傳輸並不符合起始萬用字元 Proxy 規則,因此不受到影響。使用剩餘對映規則來處理要求。

相關的指引

下列指引定義對映規則:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單編輯相關指引的值:

註:
配置與管理表單不支援埠號引數。

如果需要詳細資訊,請參閱使用配置與管理表單

啟用接合重新撰寫(選用)

JunctionRewrite 指引會在 Caching Proxy 中啟用接合重新撰寫常式,以便重新撰寫來自來源伺服器的回應,以確定在使用接合時,伺服器相關 URL 會對映到適當的來源伺服器。 同時必須啟用接合重新撰寫外掛程式。接合是由 Proxy 對映規則所定義。

當利用 Proxy 對映規則來定義接合時,您可以包含或不含 JunctionPrefix 選項來使用 Proxy 指引。

定義不含 JunctionPrefix 選項的接合

下列是一些可以對接合重新撰寫常式起作用之有效的接合範例:

以下是接合重新撰寫常式無法處理的有效接合範例:

下列是一些無效的接合範例:

這些對映規則已經建立 shopserver、authserver 和 b2bserver 的接合。請考慮到 shopserver 會以下列包含於適當的 HTML 標籤中的 URL 傳回 HTML 文件:

接合重新撰寫常式將使用 Proxy 對映規則重新撰寫伺服器關聯參照,如下所示:

定義含 JunctionPrefix 選項的接合(建議的方法)

當在 Proxy 指引中使用 JunctionPrefix 選項,而不是從 Proxy 規則中的第一個 URL 型樣推斷 JunctionPrefix 時,您可以利用下列格式,在 Proxy 規則中宣告接合字首:

Proxy url_patern1 url_pattern2 JunctionPrefix:url_prefix

當使用 JunctionPrefix 時,第一個 URL 型樣的格式沒有限制。 如果要在使用 JunctionPrefix 選項時支援接合重新撰寫,Proxy URL 必須有下列格式:Proxy /market/* http://b2bserver/*。 不過,當使用 JunctionPrefix 時,下列 Proxy 規則對接合重新撰寫有效:

Proxy  /market/partners/*.html http://b2bserver.acme.com/*.html
       junctionprefix:/market/partners

接合重新撰寫常式會影響下列標籤:

表 3. 接合重新撰寫常式影響的標籤:
標籤 屬性
!-- URL
a href
applet archive, codebase
area href
base href
body background
del cite
embed pluginspage
form action
input src
frame src, longdesc
iframe src, longdesc
ilayer src, background
img src, usemap, lowsrc, longdesc, dynsrc
layer src, background
link href
meta url
object data, classid, codebase, codepage
script src
table background
td background
th background
tr background
註:
接合重新撰寫常式不會影響瀏覽器中的 JavaScript 或外掛程式所產生的標籤。

相關的指引

下列是用來啟用接合重新撰寫常式和外掛程式的指引。

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單可以用來啟用接合重新撰寫外掛程式的指引。

註:
配置與管理表單不支援 JunctionRewrite 指引。

如果需要詳細資訊,請參閱使用配置與管理表單

使用 UseCookie 做為 JunctionRewrite 的替代方案

您可以使用 Cookie 來儲存後端伺服器資訊,如下所示:Cookie 會傳送至用戶端瀏覽器。當瀏覽器傳送 HTML 頁面中之資源的要求時, 它會連接一個 Cookie,使得 Caching Proxy 將這些要求轉遞給正確的後端伺服器。

如果要使用 Cookie 做為 JunctionRewrite 的替代方案,請如下修改 ibmproxy.conf 檔:

  1. JunctionRewrite on 變更為 JunctionRewrite on UseCookie
  2. 註銷 JunctionRewrite 外掛程式。

以下是 JunctionRewrite 外掛程式和 Cookie 實作的比較。

擴充 JunctionRewrite 功能的 transmogrifier 外掛程式範例

系統提供了可自訂的範例程式碼,其重新撰寫並剖析了 HTML 檔中的 JavaScript(TM) (SCRIPT) 和 Applet (APPLET) 標籤區塊。JunctionRewrite 外掛程式不能獨自處理 JavaScript 中或是 Java(TM) 參數值中的資源鏈結。

在安裝 Caching Proxy 之後,您可以編譯相同的程式碼,並將它配置成和 JunctionRewrite 一起執行。

下列範例檔位於您下載修正套件之目錄下的 ...samples/cp/ 子目錄中。

管理本端內容的遞送

使用 Pass 與 Exec 對映規則來將本端內容遞送至要求用戶端。依預設,具有萬用字元範本的 Pass 規則會置於最後一個對映規則。這個規則會導引所有不符合之前的範本之要求,以從目標目錄中擷取檔案,這通常是指文件的根目錄。

當接收到的 URL 不包含檔名時,Caching Proxy 會搜尋指定的目錄(如果有提供目錄)或是文件起始目錄(如果沒有指定目錄), 尋找符合配置檔中所指定的歡迎頁面清單的檔案,以滿足該要求。如果已定義數個歡迎頁面,Proxy 伺服器會按照定義它們的順序來搜尋頁面。提供第一個找到的歡迎頁面。

伺服器首頁是指伺服器在接收到僅含伺服器 URL(不含目錄或檔名)的要求時, 在預設的狀況下傳遞 Web 頁面。 如先前解釋一般,預設萬用字元對映規則需要伺服器首頁儲存在文件起始目錄之中, 且首頁檔名符合已定義的歡迎頁面。

註:
某些 Web 瀏覽器會使用首頁這個術語來代表在啟動該瀏覽器時,所載入的第一個頁面。本文件只將這個術語用作伺服器首頁。

主題說明定義文件起始目錄歡迎頁面的方法。

定義文件起始目錄

預設的文件起始目錄是:

相關的指引

下列指引會定義文件起始目錄:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

如果要變更配置與管理表單中的文件起始目錄,請使用下列程序:

  1. 選取伺服器配置 -> 要求處理程序 -> 要求路由
  2. 在要求遞送表中,尋找要求範本直欄中含有字串 /*(斜線星號)的列。這個代表文件起始目錄。 在表格下方的索引方框中,按一下對應到該列索引直欄中號碼的號碼。
  3. 按一下取代
  4. 動作下拉清單中,按一下通過
  5. 在「URL 要求範本」欄位中,輸入 /*
  6. 置換檔案路徑欄位中,輸入您的新文件起始目錄。
  7. 按一下送出
  8. 您的變更被接受後,按一下頂端頁框中的重新啟動伺服器圖示 (|)。

重新啟動之後,伺服器便開始使用新的文件起始目錄了。

如果需要詳細資訊,請參閱使用配置與管理表單

定義預設歡迎頁面

伺服器在文件起始目錄中尋找首頁,但所傳回的特定檔案由歡迎頁面清單所定義。

關於歡迎頁面

當伺服器收到不指定檔名的 URL 要求時,它會嘗試根據伺服器配置檔中設定的歡迎頁面清單來滿足該要求。這份清單定義一些檔案,作為預設首頁使用。伺服器可藉由比對歡迎頁面清單與文件起始目錄中的檔案來決定首頁。第一個找到的相符檔案,就被當作您的首頁傳回。如果找不到符合的檔案, 伺服器會顯示文件起始目錄的清單。

如果要將某特定檔案當作您的伺服器首頁使用,並在要求未指定目錄或檔名時傳回,您必須將該檔案放置在文件起始目錄下,並確定其名稱符合歡迎頁面清單中列出的其中一個檔名。

預設配置檔以下列順序定義要作為歡迎頁面的這些檔名:

  1. welcome.html 或 welcome.htm
  2. index.html 或 index.htm
  3. Frntpage.html

伺服器會傳回它找到符合清單中某一檔名的第一個檔案。在建立 welcome.html 或 index.html 檔,並將該檔案放在文件起始目錄中之前,伺服器一直都是將 Frntpage.html 當作您的首頁。

比方說,如果您是使用預設配置,而文件起始目錄雖然不含名為 welcome.html 的檔案, 但卻含有名為 index.html 和 FrntPage.html 的檔案,則 index.html 檔就是您的首頁。

如果找不到首頁,則文件起始目錄的內容會顯示成一個目錄。

相關的指引

下列指引定義歡迎頁面:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單定義歡迎頁面:

如果需要詳細資訊,請參閱使用配置與管理表單

管理 FTP 連線

Caching Proxy 可對適當的 FTP 伺服器發出 FTP URL 要求,但無法用來發出 FTP 用戶端要求。 它僅能支援從 HTTP 用戶端接收的 FTP 要求 (利用 ftp:// 通訊協定架構)。

FTP 檔案的要求只支援 GET、PUT 和 DELETE 方法。而 FTP 目錄清單的要求只支援 GET 方法。 依預設,Caching Proxy 中不啟用 PUT 和 DELETE。 如果需要詳細資訊,請參閱啟動 HTTP/FTP 方法

主題說明保護 FTP 檔案與管理 FTP 伺服器登入目錄路徑鏈結的方式。

保護 FTP 檔

如果您已經針對 FTP 檔案上載啟用 PUT 方法, 或者針對 FTP 檔案刪除啟用 DELETE 方法, 則至少要針對 PUT 和 DELETE 要求定義 FTP Proxy 保護, 以防止在 FTP 伺服器上有未經授權的檔案更新。

如果要保護發送的 FTP 要求,請在配置與管理表單中,選取伺服器配置 -> 文件保護。如果要對 FTP 檔案要求建立保護設定, 請在要求範本的開頭併入 ftp://。比方說,如果要保護名為 exams 目錄中的檔案,請使用範本 ftp://exams/*

如果需要建立保護設定的詳細資訊,請參閱伺服器保護設定

管理 FTP 伺服器登入

如果要求 URL 中沒有指定任何使用者 ID 和密碼,Caching Proxy 會以匿名方式(使用使用者 ID ANONYMOUS)登入所要求的 FTP 伺服器。許多 FTP 伺服器需要電子郵件位址作為匿名 FTP 的密碼。 如果 FTP 伺服器要求匿名登入的密碼,Caching Proxy 會送出配置檔中 WebmasterEmail 指引所指定的電子郵件位址。

如果要設定網站管理者電子郵件位址,請在配置與管理表單中選取伺服器配置 -> 系統管理 -> SNMP MIB。電子郵件位址也可以使用 WebmasterEmail 指引來設定;詳細資訊,請參閱參考章節:WebMasterEMail -- 設定電子郵件位址來接收選取伺服器報告

如果要求 URL 中的 FTP 伺服器需要特定的使用者 ID 和密碼才能登入,使用者可在要求 URL 中輸入使用者 ID 和密碼,如下所示:

ftp://userid:password@ftpserverhost/ 

如果您不要在要求 URL 中指定 FTP 使用者 ID 的密碼,使用者可以在 URL ftp://userid@ftpserverhost 中僅輸入使用者 ID。Caching Proxy 先嘗試以指定的使用者 ID 及不指定密碼來登入 FTP 伺服器。 如果未指定密碼的登入失敗,瀏覽器會提示您輸入與指定使用者 ID 關聯的密碼。

如果不使用匿名登入,至少要在 URL 中指定使用者 ID。 如果沒有指定使用者 ID,則會採用匿名登入,並且用戶端不會提示您輸入使用者 ID。

管理 FTP 目錄路徑

Caching Proxy 可讓您指定是否將 FTP URL 中的路徑名稱解譯為相對於使用者工作目錄,或相對於根目錄。 比方說,如果登入 FTP 伺服器的使用者具有預設工作目錄 /export/home/user1, 並且想從 test 子目錄中擷取 test1.exe 檔,Proxy 會根據解譯 FTP URL 的方式,使用下列 URL 來從 FTP 伺服器擷取檔案:

如果設定的是相對 FTP URL 路徑,使用者還是可以指定絕對路徑名稱來表示根目錄, 方法是使用以 %2F 跳開起始斜線字元 (/) 的慣例。 比方說,如果工作目錄為 /export/home/user1 的 user1 想要存取 user2 的工作目錄 /export/home/user2 中的某個檔案,則即使已選擇相對 FTP URL 路徑名稱, ftp://user1:user1pw@FTPhost/%2Fexport/home/user2/file 要求也會被正確解譯為相對於根目錄 / 的 URL(亦即,解譯為絕對路徑名稱)。

如果要指定如何解譯 FTP URL,請在配置與管理表單中選取 Proxy 配置 -> Proxy 效能。在表單下層部分,請於 FTP URL 路徑應該是:之下選取絕對路徑來指定伺服器的根目錄,或選取相對路徑來指定使用者的工作目錄為起始路徑。

這項設定也可以在 Proxy 配置檔中變更;如果需要詳細資訊,請參閱FTPUrlPath -- 指定如何解譯 FTP URL

管理 FTP 鏈結

如果您將多個 Web Proxy 伺服器鏈結在一起,可以指定將含有 FTP URL 的要求傳送到鏈結的 Web Proxy 伺服器,而不是直接傳送到 FTP 伺服器。 如果要為 FTP 要求指定鏈結的 Proxy 伺服器,請在配置與管理表單中選取 Proxy 配置 -> Proxy 鏈結與非 Proxy 網域。 使用 http:// 通訊協定架構來指定鏈結的 Proxy 之 URL,即使鏈結要求使用 ftp:// 通訊協定架構。

如果要使用 Proxy 配置檔來配置 FTP 鏈結,請參閱ftp_proxy -- 指定針對 FTP 要求的另一部 Proxy 伺服器中的參考章節。

自訂伺服器處理程序

主題將說明如何使用伺服器端併入,將資訊插入傳遞給用戶端的 CGI 程式及 HTML 文件。也將討論如何自訂伺服器的錯誤訊息和資源對映。

伺服器端併入

伺服器端併入可讓您在伺服器作為來源伺服器(亦即非 Proxy 或快取物件)時, 將資訊加入 CGI 程式及該伺服器傳給用戶端的 HTML 文件中。 可以傳送到用戶端的資訊範例為目前的日期、檔案的大小、檔案的最後變更日期等。本節說明伺服器端併入的指令格式,並說明如何在 CGI 程式及 HTML 文件中使用伺服器端併入指令。您亦可以使用伺服器端併入來自訂錯誤頁面。

伺服器端併入的注意事項

在伺服器上使用伺服器端併入前,請考慮效能、安全性及風險方面的問題:

伺服器端併入的配置

如果要啟用伺服器端併入,請在配置與管理表單中選取伺服器配置 -> 基本設定。這份表單可讓您指定下列哪些伺服器端併入類型可以被接受:

除了其他檔案類型之外,這份表單也可讓您指定是否要對文字或 HTML 文件執行伺服器端併入處理程序。

此外,請確定用於併入的副檔名可供辨識。在配置與管理表單中,選取伺服器配置 -> MIME 類型及編碼,以及使用 MIME 類型表單。請注意:依預設,shtml 和 htmls 副檔名會被辨識。

如果要藉著編輯 Proxy 配置檔中的指引,配置適用來伺服器端併入的伺服器,請參閱下列指引的參考章節:

伺服器端併入的格式

併入指令必須併入 HTML 文件或 CGI 程式作為註解。其指令格式如下:

<!--#directive tag=value ... --> 
或 
<!--#directive tag="value" ... -->

括住值的雙引號為選用性的,但用於內含的空格時則為必要的。

伺服器端併入的指引

本節說明伺服器接受可進行伺服器端併入的指引。 (這些指引不可以與 Proxy 配置檔中的指引發生混淆,附錄B. 配置檔指引中有說明。)

config--控制檔案的處理程序

請使用這個指引來控制檔案處理的某些方面。有效的標籤為 cmntmsgerrmsgsizefmttimefmt

cmntmsg
這個標籤用來指定置於其他指引新增的備註開頭之前的訊息。 對任何在指引規格和 "-->" 之間含有文字的指引而言,該文字會被視為備註且新增至伺服器傳送到用戶端的檔案。

範例:

<!--#config cmntmsg="[This is a comment]" -->
<!-- #echo var="  " extra text -->

結果:<!--[This is a comment] extra text -->

預設值: [the following was extra in the directive]

errmsg
請使用這個標籤,指定在處理檔案發生錯誤時, 得傳送至用戶端的訊息。這則訊息會記錄到伺服器的錯誤日誌中。

範例:

<!-- #config errmsg="[An error occurred]" -->

預設值: "[An error occurred while processing this directive]"

sizefmt
這個標籤可用來指定顯示檔案大小時所用的格式。在下列範例中,bytes 是用來顯示位元組數的值, 而 abbrev 是用來顯示千位元組或百萬位元組數的值。

範例 1:

<!--#config sizefmt=bytes -->
<!--#fsize file=foo.html -->

結果:1024

範例 2:

<!--#config sizefmt=abbrev -->
<!--#fsize file=foo.html -->

結果:1K

預設值:"abbrev"

timefmt
這個標籤用來指定提供日期的格式。

範例:

<!--#config timefmt="%D %T" -->
<!--#flastmod file=foo.html -->

結果:"10/18/95 12:05:33"

預設值:"%a, %d %b %Y %T %Z"

下面的 strftime() 格式都可以使用 timefmt 標籤:

指定元 意義
%% 取代為 %
%a 取代為縮寫的工作日名稱
%A 取代為完整工作日名稱
%b 取代為縮寫的月份名稱
%B 取代為完整月份名稱
%c 取代為日期與時間
%C 取代為世紀數(年份除以 100 並捨去尾數)
%d 取代為月日 (01-31)
%D 以 %m/%d/%y 格式插入日期
%e 以十進位數 (01-12) 插入月份(僅在 C POSIX 下,其長度為兩個字元、靠右補滿空白的欄位)
%E[cCxyY] 如果另一個日期/時間格式無法使用,%E 描述子會對映至無前置符號的對等指定元(例如,%EC 對映至 %C)
%Ec 取代為另一個日期與時間
%EC 取代為另一個基本年份(期間)名稱
%Ex 取代為另一個日期格式
%EX 取代為另一個時間格式
%Ey 取代為替代格式中 %EC(僅年份)的偏置值
%EY 取代為另一個完整的年份格式
%h 取代為縮寫的月份名稱(與 %b 相同)
%H 取代為十進位數 (00-23) 的小時格式(23 小時制)
%I 取代為十進位數 (00-12) 的小時格式(12 小時制)
%j 取代為年日 (001-366)
%m 取代為月份 (01-12)
%M 取代為分鐘 (00-59)
%n 取代為另一行
%O[deHlmMSUwWy] 如果另一個日期/時間格式無法使用,%E 描述子會對映至其無前置符號的對等指定元(例如,%Od 對映至 %d)
%Od 使用替代的數值符號取代月日,如果指定了前置零的替代符號,必要時,還得在數字前加上前置零;如果沒有指定,則只加前置空格
%Oe 使用替代的數值符號取代月日,必要時還要加上前置空格
%OH 使用替代數值符號取代小時格式(24 小時制)
%OI 使用替代數值符號取代小時格式(12 小時制)
%Om 使用替代數值符號取代月份
%OM 使用替代數值符號取代分鐘
%OS 使用替代數值符號取代秒鐘
%OU 使用替代數值符號取代一年中的星期數(星期天是一週的第一天,規則同 %U)
%Ow 使用替代數值符號取代工作日(星期天=0)
%OW 使用替代數值符號取代一年中的星期數(星期一為一週的第一天)
%Oy 取代為替代格式中的年份(%C 算起的偏置值)並使用替代數值符號
%p 取代為 AM 或 PM 的當地同義字
%r 取代為相當於 %I:%M:%S %p 的字串
%R 取代為 24 小時制的時間 (%H:%M)
%S 取代為秒鐘 (00-61)
%t 取代為標籤
%T 取代為相當於 %H:%M:%S 的字串
%u 取代為十進位數(1 至 7)的工作日,其中 1 代表星期一
%U 取代為一年中的星期數 (00-53),其中星期日為一週的第一天
%V 取代為一年中的星期數 (01-53),其中星期一為一週的第一天
%w 取代為工作日 (0-6),其中星期日為 0
%W 取代為一年中的星期數 (01-53),其中星期一為一週的第一天
%x 取代為適當的日期格式
%X 取代為適當的時間格式
%y 取代為世紀內的 2 位數年份
%Y 取代為完整的 4 位數年份
%Z 取代為時區名稱;無法辨別的時區則保留空白

作業系統配置會決定完整及簡式的月份名稱及年份。

echo--顯示變數值

請使用這個指引,顯示用 var 標籤所指定的環境變數值。如果沒有找到變數, 則會顯示出()。同樣地,echo 可顯示 setglobal 指引所設定的值。 下列環境變數可以顯示出來:

DATE_GMT
「格林威治標準時間」目前的日期及時間。這個變數的格式製作是由 config timefmt 指引所定義。
DATE_LOCAL
本日及本地時間。這個變數的格式製作是由 config timefmt 指引所定義。
DOCUMENT_NAME
最上層文件的名稱。 如果 HTML 是由 CGI 所產生,這個變數將包含該 CGI 的名稱。
DOCUMENT_URI
用戶端所要求的 URL 全名(不含查詢字串)。
LAST_MODIFIED
上次修改之現行文件的日期與時間。 這個變數的格式製作是由 config timefmt 指引所定義。
QUERY_STRING_UNESCAPED
由用戶端傳送的搜尋查詢。 除非 HTML 是由 CGI 所產生,否則不定義這個項目。
SSI_DIR
與 SSI_ROOT 有關的現行檔案路徑。 如果現行檔位在 SSI_ROOT,這個值便是 "/"。
SSI_FILE
現行檔案的名稱。
SSI_INCLUDE
這個值用於擷取現行檔案的併入指令中。如果是最上層檔案,便不需定義這個項目。
SSI_PARENT
含有擷取現行檔案的併入指令之檔案的路徑和檔名(相對於 SSI_ROOT)。
SSI_ROOT
最上層檔案的路徑。所有併入要求皆須存放在這個目錄或其子目錄下。

範例:

<!--#echo var=SSI_DIR -->

exec--指定 CGI 程式

請使用這個指引來併入 CGI 程式的輸出。Exec 指引會捨棄 CGI 輸出的任何 HTTP 標頭,除了下列項目以外:

Content-type
決定是否要為其他併入剖析輸出的主體
Content-encoding
決定是否需要將 ASCII 轉換為 EBCDIC
Last-modified
除非現行值比指定值還要新,否則會取代現有的 last-modified 標頭值

cgi--指定 CGI 程式 URL

請使用這個指引來指定到 CGI 程式的 URL。

在這個範例中,program 代表所要執行的 CGI 程式; path_infoquery_string, 皆為傳給程式作為環境變數的參數:

<!--#exec cgi="/cgi-bin/program/path_info?query_string" -->

這個範例顯示如何使用變數:

<!--#exec cgi="&path;&cgiprog;&pathinfo;&querystring;" -->

flastmod--顯示上次變更文件的日期與時間

請使用這個指引,顯示文件上次變更的日期及時間。 這個變數的格式製作是由 config timefmt 指引所定義。filevirtual 標籤可與這個指引並用, 其意義定義如下。

指引格式:

<!--#flastmod file="/path/file" --> 
<!--#flastmod virtual="/path/file" -->
file
請使用這個標籤來指定檔案的名稱。對於 flastmodfsizeinclude 而言,如果在 file 前面加上 '/', 就表示它與 SSI_ROOT 有相對的關係。 否則,就是相對於 SSI_DIR 的關係。 所指定的檔案必須存放在 SSI_ROOT 中或其任一子目錄下。例如:
<!--#flastmod file="/path/file" -->
virtual
請使用這個標籤來指定到文件之虛擬路徑的 URL。對於 flastmodfsizeinclude 而言,virtual 皆須透過伺服器的對映指引加以傳遞。例如:
<!--#flastmod virtual="/path/file" -->

範例:

<!--#flastmod file="foo.html" -->

結果:12May96

fsize--顯示檔案大小

請使用這個指引來顯示指定檔案的大小。這個變數的格式製作是由 config sizefmt 指引所定義。filevirtual 標籤可與這個指引並用, 其意義與先前在 flastmod 指引中所定義的相同。

範例:

<!--#fsize file="/path/file" -->
<!--#fsize virtual="/path/file" -->

結果:1K

global--定義廣域變數

使用這個指引來定義廣域變數,這些變數稍後會被由這個檔案或任何併入的檔案所回應。

範例:

<!--#global var=VariableName value="SomeValue" -->

比方說,如果要跨越虛擬界限參照上層文件,您必須設定廣域變數 DOCUMENT_URI。您亦須參照下層文件中的廣域變數。這個範例顯示您需要在上層文件中插入的 HTML 編碼:

<!--#global var="PARENT_URI" value=&DOCUMENT_URI; -->

這個範例顯示您需要在下層文件中插入的 HTML 編碼:

<!--#flastmod virtual=&PARENT_URI; -->

include--將文件併入輸出中

這個指引可用來將文件中的文字併入到輸出中。filevirtual 標籤可與這個指引並用, 其意義與以上在 flastmod 指引中所定義的相同。

set--設定要回應的變數

請使用這個指引來設定變數(稍後只能由這個檔案加以回應)。

範例:

 <!--#set var="Variable 2" value="AnotherValue" -->

在定義指引時,您可以在 value 的中間回應字串。 例如:

<!--#include file="&filename;" -->

變數:伺服器端 set 指引其後通常緊接 echo 指引,以便尋找 set 變數,然後在找到變數的位置加以回應,並以該函數加以處理。它可包含變數的多重參照。 伺服器端設定亦可讓您回應已設定的變數。 如果沒有找到 set 變數,則不會有任何顯示。

當伺服器端設定在伺服器端併入指引中遇到變數參照時, 它會嘗試在伺服器端解析它。 在下列範例的第二行中,伺服器端變數 &index; 搭配字串 var 使用來建構變數名稱 var1。 接著跳出 &ecirc; 中的 & 來指定一個值給變數 &var1;, 這樣它就不會被辨識為變數。相反地,它被用作一個字串來建立 fr&ecirc;d 值,或 e 上面有重音符號的 fred。 變數 &ecirc; 為用戶端變數。

<!--#set var="index" value="1" --> 
<!--#set var="var&index;" value="fr\&ecirc;d" --> 
<!--#echo var="var1" -->

可以跳出的字元(稱為跳出變數)前面有一條反斜線 (\),包括下列各項:

字元 意義
\a 警示(鈴聲)
\b 倒退鍵
\f 換頁(新頁)
\n 換行
\r 回車
\t 水平欄標
\v 垂直欄標
\' 單引號
\" 雙引號
\? 問號
\\ 反斜線
\- 連字符號
\. 句點
\& &符號

自訂錯誤訊息

您可以自訂 Caching Proxy 傳回的錯誤訊息,也可針對特定的錯誤狀況來定義特定訊息。在配置與管理表單中選取伺服器配置 -> 錯誤訊息自訂。 這份表單可讓您選取錯誤狀況及指定用於該狀況的特定 HTML 檔。

如果要編輯 Proxy 配置檔中的指引來自訂錯誤訊息,請參閱指引的參考章節:ErrorPage -- 為特定的錯誤狀況指定一個自訂的訊息

即時串流通訊協定 (RTSP) 重新導向

WebSphere Application Server 6.0.1 版以「RTSP 重導程式」格式介紹串流媒體支援。RTSP 可使 Caching Proxy 充當連繫媒體播放程式的第一個點, 並將它們的要求重新導向至適當的 Proxy 伺服器或能夠提供所要求的媒體內容的內容伺服器。

RTSP(「即時串流通訊協定」)定義於 RFC 2326 中。它是一種用來控制資料串流的網際網路標準通訊協定。雖然它沒有加入傳遞串流的技術, 但它還是有足夠的彈性能用來控制與影像或音效播放不相關的資料串流。

關於 RTSP 重新導向

RTSP 重新導向特性,可讓 Caching Proxy 重新導向 RTSP 控制的任何串流媒體階段作業的要求。包括下列媒體類型:

可配置來聯繫 RTSP 埠(通常指 554)上的 Proxy 伺服器之任何播放程式, 皆可在 Caching Proxy 中使用這個組織架構,讓它的要求由 RTSP 重導程式處理。

RTSP 重導程式不會快取或直接 Proxy 媒體的呈現。RTSP 重導程式必須搭配協力廠商串流媒體伺服器使用, 才能提供任何或全部功能。 具有 RTSP 重導程式的 Caching Proxy 必須有跨一或多個 RTSP Proxy 伺服器的網路存取權。

RTSP 限制

這項特性受到下列限制:

目前,僅支援 RealNetworks 技術。 這些包括 RealProxy Proxy 伺服器、RealServer 來源伺服器及 RealPlayer 媒體播放程式。

RTSP 加強功能

先前,「RTSP 重導程式」受到限制,任何 URL 對相同來源伺服器的所有要求均以相同方式重新導向。 根據檔名或所要求的 URL 其他部分來重新導向是不可能的。這項限制不再適用。「RTSP 重導程式」目前使用來自所接收要求的完整 URL 和 Caching Proxy 配置檔中的臨界值 (rtsp_proxy_threshold) 設定,來判定是否將用戶端要求重新導向至來源伺服器或 Proxy 伺服器。現在相同來源伺服器的要求可個別處理。

配置 RTSP 重新導向

下列配置檔指引可用來控制 RTSP 重新導向。 這些指引的設定不會因伺服器重新啟動而被重新整理; 伺服器必須完全停止後再重新啟動,這些指引的變更才會生效。

配置標頭選項

當要求文件時,Web 用戶端會傳送標頭,這些標頭提供瀏覽器或要求的其他相關資訊。 只要傳送要求時,就會自動產生標頭。

Caching Proxy 有許多選項,可以讓您自訂標頭資訊,使其隱藏而不被目的地伺服器發現。 以其他同屬標頭替代實際標頭的優點是可以增加用戶端匿名, 但是缺點是會停用寫入某些網頁的標頭型頁面自訂。

通常標頭使用下列格式:

User-Agent: Mozilla 2.02/OS2
Client-IP: 45.37.192.3
Referer: http://www.bigcompany.com/WebTrafficExpress/main.html

這個標頭包括下列欄位:

大部分標頭可藉由適當的 Proxy 配置設定來攔阻。 不過,有些標頭欄位是來源伺服器所必要的,如果將它們攔阻,可能會使網頁無法正確顯 示(例如,在某些情況下,攔阻 "host" 標頭欄位會造成使用者看到錯誤的網頁)。 如果需要標頭欄位的進一步資訊,請參閱 HTTP 1.1 版的規格。

相關的指引

如果要編輯 Proxy 配置檔來變更標頭選項,請參閱下列指引的參考章節:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

您可以使用兩個配置與管理表單來指定標頭選項:

如果需要詳細資訊,請參閱使用配置與管理表單

關於程式設計介面

Programming Guide for Edge Components 中會詳細說明應用程式設計介面 (API)。配置檔內的 API 指引啟用要求處理程序工作流程內的外掛程式常式,其為在特定的步驟期間所呼叫。這些外掛程式常式,還有內建常式能取代或執行。

相關的指引

下列是 API 指引:

如果需要詳細資訊,請參閱手動編輯 ibmproxy.conf 檔

配置與管理表單

下列配置與管理表單編輯相關指引的值:

如果需要詳細資訊,請參閱使用配置與管理表單

配置 Proxy 伺服器快取

本節討論 Proxy 快取與配置它的方法。快取可以設定成在記憶體中(快取記憶體)或在一或多個儲存裝置(磁碟快取)上儲存檔案。 您可以配置快取重新整理代理程式,將經常要求的檔案預載到快取記憶體,而且各種 URL 過濾器可以套用到快取。 本節亦討論藉由使用遠端快取存取或網際網路快取通訊協定 (ICP) 外掛程式、以快取記憶體回收來移除已作廢的檔案, 以及快取動態產生的檔案等方式來快取共用。

這個部分包含下列各主題

Proxy 伺服器快取概觀

快取是一項特性,Proxy 伺服器利用它儲存用戶端要求的本端檔案複本, 如此一來當相同或其他用戶端重新要求這些檔案時,伺服器就可以快速地從快取提供它們。

Caching Proxy 符合 HTTP 1.1,它通常遵循 HTTP 1.1 通訊協定來快取及判斷文件的即時性。

本章討論 Proxy 伺服器快取部分特性。對於這些可以配置的特性,後續的章節中包含了如何設定適當值的詳細說明。

快取儲存體

Proxy 伺服器能在實體儲存體裝置或系統記憶體上儲存快取。比較適合您系統的快取儲存體的類型取決於您的硬體功能, 以及擁有快速的快取回應或在快取中儲存有大量項目是否較為重要。記憶體快取的回應時間通常比磁碟快取的回應時間來得快,但是 Proxy 伺服器機器中的 RAM 數量限制了記憶體快取大小。儲存裝置的大小限制了磁碟快取大小,而儲存裝置的大小通常大於 RAM 的數量。

針對磁碟快取,Caching Proxy 使用原始資料磁碟快取,這表示 Proxy 伺服器會直接寫入快取裝置而不使用作業系統的讀寫通訊協定。必須使用 htcformat 指令來準備磁碟快取的儲存裝置。關於 htcformat 的詳細說明,包含在配置基本快取一節之中。

快取索引

在記憶體或磁碟快取中,Caching Proxy 也使用系統記憶空間來保留快取索引,這樣能減少尋找快取檔的處理時間。

Caching Proxy 的快取目錄結構及其查閱方法與其他 Proxy 伺服器不同。Caching Proxy 使用快取中的檔案之資訊來維護記憶體中的索引。 使用 RAM 執行查閱而不使用磁碟或其他媒體,會加速檔案查閱及擷取。

索引包含快取物件的 URL、快取位置及有效時間資訊。 基於這個原因,保留索引所需的記憶體量與快取中的物件數目成正比。

當由用戶端接收要求之後,Proxy 會檢查記憶體中該快取索引的 URL。

FTP 快取

當配置 Proxy 來快取要求時,它可以快取 FTP 檔案要求及 HTTP 檔案要求。 不過,因為 FTP 檔案不含與 HTTP 檔案同類型的標頭資訊, 所以計算快取 FTP 檔案到期日的方式與其他快取檔案不同。

當您對 FTP 伺服器發出要求擷取檔案時,Proxy 會先傳送檔案的 LIST 要求給 FTP 伺服器, 取得有關這個檔案的 FTP 目錄資訊。如果 FTP 伺服器是以正面的完整回覆及檔案的目錄資訊,作為 LIST 要求的回應,Proxy 便會以 FTP 目錄資訊中所剖析之日期來建立 HTTP Last-Modified 標頭。 然後,Proxy 的快取功能便會將這個 Last-Modified 標頭,與配置檔中 CacheLastModifiedFactor 指引中所設定的值搭配使用,來決定 FTP 檔案在到期之前可留在快取中的時間。

如何使用 Last-Modified 標頭及 CacheLastModifiedFactor 指引來決定檔案在快取中的保留期限之詳細資訊, 請參閱維護快取記憶體內容

為特定使用者 ID(而不是匿名登入)擷取的 FTP 檔案,都被視為不能快取的專用檔案。

DNS 快取

除了快取 Web 內容以外,Proxy 伺服器亦執行網域名稱伺服器 (DNS) 快取。 例如,用戶端向 www.myWebsite.com 要求 URL 時,Proxy 會要求它的 DNS 伺服器將主機名稱 www.myWebsite.com 解析成 IP 位址。 然後快取 IP 位址,以縮短對該主機名稱的後續要求的回應時間。DNS 快取是自動的,因此無法重設配置。

快取排除

某些檔案與文件永遠不會被快取。它們包含下列各項:

可藉由設定快取過濾器進一步地限制快取的項目。例如,您可能不要 Proxy 伺服器從 Proxy 快取本端提供的檔案。詳情請參閱控制已快取的部分

快取管理

管理快取功能包括許多因素在內。 身為伺服器管理者,您可以指定下列各項:

此外,可以對快取配置做調整以改進 Caching Proxy 的整體效能。如果要取得有關效能調整的詳細資訊,請參閱調整 Proxy 伺服器快取

配置基本快取

如果您使用 Edge Components 產品安裝程式 中的預設設定來安裝 Caching Proxy,會啟用快取並將快取儲存在記憶體中。您或許想要調整下列基本快取設定以自訂您的系統所需要的快取。

如果您不使用安裝程式,請配置這些設定以啟用快取。

配置快取的必要基本步驟如下:

  1. 啟用快取。
  2. 配置快取儲存體。

配置基本快取設定之後,您或許要新增或變更下列特性的設定。

本章提供關於變更這些設定中的每一個的指示。

1. 啟用快取

如果要啟用快取,請將 Caching 指引設定為 on, 或勾選快取配置->快取設定配置表單上的啟動 Proxy 快取方框。如果您不指定快取裝置,就會將快取儲存在記憶體中。如果要建立磁碟快取,請遵循 2. 配置快取儲存體 中的步驟。

2. 配置快取儲存體

配置快取儲存體的作業取決於您是否使用記憶體快取或磁碟快取。

如果要使用記憶體快取,請自訂「快取記憶體」設定,這樣就能包含足夠的記憶體以保留快取的內容。建議的快取記憶體大小,請參閱設定快取記憶體

如果要使用磁碟快取,您必須執行下列動作:

  1. 準備儲存裝置以保留快取。

    快取需要特殊格式化裝置。建議提供整個裝置或磁碟分割區給快取。 最小的快取是 16392 KB。

    如果要格式化快取裝置,請執行下列動作:

    1. 選擇要保留快取的裝置。確定沒有其他程式使用該儲存體空間,而且可存取這個裝置當作原始(或字元格式化)裝置。
    2. 使用 htcformat 指令格式化裝置。語法如下:
      htcformat raw_device_path [-blocksize block_size] [-blocks number_of_blocks]
      -blocksize 和 -blocks 引數是選用性的引數。 預設區塊大小是 8192 位元組數。 如果沒有指定區塊數目,就會以磁碟分割區可容納的最大區塊數目填入磁碟分割區。

      指定裝置路徑時,一定要指定原始裝置路徑。

      • 在 AIX 平台中,定義成 /dev/lv02 的邏輯容體的原始裝置路徑會是 /dev/rlv02
      • 在 Linux 平台中,必須先執行 raw 指令, 再執行 htcformat,才能連結原始裝置路徑與實際 SCSI 磁碟機 sdb1。
        raw /dev/raw/raw1 dev/sdb1
      • 在 HP-UX 和 Solaris 平台中,定義成 /dev/dsk/c0t0d0s0 之分割區的原始裝置路徑為 /dev/rdsk/c0t0d0s0
      • 在 Windows 平台中,定義成 e: 的裝置的原始裝置路徑會是 \\.\e:

      存取原始裝置的其餘資訊,請參閱檔案系統的參考資料。

  2. 藉由使用 CacheDev 指引或快取設定配置表單來指定快取裝置。您可以指定一個以上的裝置。
注意:
在 Windows 系統上,htcformat 指令不會自動將快取裝置標示成無法寫入。

如果作業系統嘗試寫入快取裝置,就會遺失快取資料。 為了避免發生上述情況,您可使用「Windows 磁碟管理程式」公用程式來準備磁碟之後,才使用 htcformat 指令。如果要準備磁碟,請使用磁碟公用程式來刪除您要使用的裝置或分割區,然後重新建立它但不必加以格式化。 這將會使系統認為該裝置無法用於系統儲存體。

選用性的自訂

設定快取記憶體

依據下列原則,在 CacheMemory 指引(或在快取設定配置表單的快取記憶體欄位)中設定值。這個值所設定的記憶體數量是用於快取基礎架構支援,包含快取索引以及(如果有配置記憶體快取的話)儲存快取記憶體內容。

最小值

在磁碟快取的最佳效能方面,建議對快取基礎架構支援使用(包含快取索引)的快取記憶體最小值為 64 MB。隨著快取記憶體大小的增加,快取索引也會跟著增加,而且需要更多的快取記憶體來儲存索引。64 MB 的快取記憶體值是足夠提供快取基礎架構支援,以及儲存大概 6.4 GB 磁碟快取的快取索引。如果需要更大的磁碟快取,則快取記憶體必須要有快取大小的 1% 大小。

在記憶體快取方面,快取記憶體值是快取基礎架構支援和快取本身記憶體擱置的量。建議的快取記憶體最小值為 64 MB。

最大值

如果對記憶體快取配置太多實體記憶體, 那麼可能會發生不希望發生的事情,例如「記憶體不足」錯誤或 Proxy 伺服器失敗。 快取記憶體的值限制是由於 32 位元應用程式的限制所導致。 因為 Caching Proxy 是 32 位元應用程式,所以它最多可以使用 2 GB 記憶體。

Caching Proxy 會配置 CacheMemory 指引所定義的記憶體,並使用該記憶體作為儲存物件的快取記憶體。對於快取記憶體、網路 I/O 和連線緩衝區、階段作業緩衝區的資料結構, 以及主要程序和所有執行緒的記憶體來說,必須配置其他記憶體(無論它是記憶體快取或原始磁碟快取)。 而且,來自某些用戶端的要求有可能需要配置比預設值更大的記憶體儲存區的區塊。 因此,如果將 CacheMemory 指引設定為接近 2 GB 標記, 那麼 Caching Proxy 有可能會發生記憶體不足而無法運作的狀況,特別是在高要求負載的情況下。

建議 CacheMemory 指引不可設為超過 1600 MB。 值如果超過 1600 MB,會妨礙 Caching Proxy 一般操作所使用的記憶體, 而引起反效果。這些反效果一般包括,但不限於 CPU 使用量的增加(可能高達 100% 使用量)、記憶體不足的錯誤以及效能降低。 如果需要整體較大快取記憶體大小,請使用快取裝置或實作含有 RCA 或 ICP 的共用快取配置。

儲存或載入快取記憶體到磁碟中

您可以將快取內容匯入傾出檔中,或從中匯出快取內容。當快取記憶體會在重新啟動期間流失時,或是針對多個 Proxy 部署同一個快取記憶體時,這個設定會很有用。

設定快取過濾器

過濾器可藉由比對 URL 要求的表單來限制快取的內容。關於設定過濾器的詳細資訊, 請參閱控制已快取的部分

配置快取查詢結果與動態產生的檔案

選擇性地,您可以配置 Proxy 伺服器以快取查詢要求的結果。依預設,不會快取包含有問號 (?) 的 URL。如果要取得如果需要詳細資訊,請參閱快取查詢回應

另一個選項是快取 servlet 或由 IBM WebSphere Application Server 執行的 JSP 之結果。詳情請參閱快取動態產生的內容

配置檔案到期與記憶體回收

關於快取中的檔案何時到期以及移除已作廢檔案的方法的資訊,請參閱維護快取記憶體內容

配置自動預載

您可以在要求快取之前先配置它,以每日為基準來自動重新整理最普遍的檔案。請參閱將快取代理程式配置為自動重新整理及預載以取得資訊。

配置快取共用

某些情況下,使用共用快取會增加在快取中找到要求的檔案的可能性。請參閱使用共用的快取以取得資訊。

配置日誌

維護精準與正確的日誌對管理 Caching Proxy 來說是很重要的。監視 Caching Proxy包含關於配置與使用 Proxy 伺服器日誌的資訊。

控制已快取的部分

快取 Proxy 提供數種過濾方法以控制要快取哪些檔案、文件及其他物件。 這些包含下列特性:

註:
快取配置 -> 快取行為配置與管理表單包含標示為基於進入的 URL 來快取的選項。(對應配置檔指引被稱為 CacheByIncomingURL。)這個指引參照快取檔案的檔名。 勾選本方框使得快取檔案的檔名會根據進入的 URL 而定;如果沒有勾選本方框,則檔名是根據送出的 URL 而定。

配置 URL 型快取過濾器

可配置 Proxy 伺服器以比較要求與 URL 範本,以決定是否快取該檔案。如果要配置這項特性,針對其檔案一律為快取的要求設定範本,以及針對其檔案必須是絕不為快取的要求設定個別範本。能夠使用多重範本。

已使用類似的系統來啟用查詢回應快取。請參閱快取查詢回應以取得相關資訊。

如果要編輯 ibmproxy.conf 檔來設定 URL 快取過濾器,請參閱CacheOnly -- 只快取具有符合範本的 URL 的檔案NoCaching -- 指定不快取那些含有符合範本的 URL 的檔案

如果要在配置與管理表單中設定 URL 快取過濾器,請使用快取配置 -> 快取行為URL 過濾的快取欄位。使用本節來指定一律快取其檔案的 URL,或指定絕不快取其檔案的 URL。 如果要指定兩個清單(一個是永遠要快取的檔案清單,另一個是絕不快取的檔案清單),請先建立一個清單, 然後在按一下送出按鈕之後再建立另一個清單。

快取查詢回應

使用快取過濾器,便能快取從查詢(包含問號的 URL 要求)傳回的回應。 如果許多用戶端提出相同查詢要求,那麼在反向 Proxy(代理)情況下這項特性很有用。

您可以編輯 ibmproxy.conf 配置檔中的 CacheQueries 指引來配置查詢快取。CacheQueries 指引有下列選項:

CacheQueries -- 指定快取含有問號 (?) 的 URL 的回應

有提供這些選項的其他資訊。

如果要在配置與管理表單中配置查詢回應快取,請使用快取配置 -> 快取行為URL 過濾的快取欄位。 如果要指定兩個清單,請先建立一個清單,然後在按一下送出按鈕之後再建立另一個清單。

查詢回應快取的附加需求

除了配置查詢快取設定以外,請確定已適當配置下列設定以便快取查詢回應。 關於使用配置與管理表單設定這些選項的資訊,請參閱配置快取即時性

快取本端提供的檔案

因為快取 Proxy 伺服器所提供的檔案通常是無效率的,在預設的狀況下不會快取起源於伺服器本端網域的檔案。如果要快取起始於伺服器本端網域的物件, 請勾選快取配置 -> 快取行為配置與管理表單上的快取本端網域檔案方框。另外,將 Proxy 配置檔中的 CacheLocalDomain 指引設定為 on

根據部分 URL 來快取檔案

能只根據送入的 URL 指定(有意義的)部分而不是完整 URL 來快取項目。 在異動模式 Web 服務中或對於動態快取來說這樣做很有用, 因為當進入的要求的 URL 的重要部分是相同時,通常會對不同的進入要求傳回相同回應。

您無法使用配置與管理表單來根據部分 URL 指定快取。 請使用 Proxy 配置檔中的 SignificantUrlTerminator 指引來指定 URL 要求的終止碼。 這個指定使得 Caching Proxy 在處理要求及決定是否快取要求的檔案時,只評估終止碼前面的字元。如果有定義一個以上的終止碼,Caching Proxy 會按照 ibmproxy.conf 檔中定義的順序來比較進入的 URL 與終止碼。請參閱SignificantURLTerminator -- 指定 URL 要求的終止碼,以取得詳細資訊。

相關的配置檔指引

如果要直接編輯 Proxy 配置檔以設定快取過濾器,請參閱下列指引的參考章節:

無法快取的文件之資訊,請參閱Proxy 伺服器快取概觀

維護快取記憶體內容

因為快取包括製作與保存提供的檔案,快取需要某些常式維護以正常運作。當快取的檔案不再與來源伺服器上的檔案一致時,必須檢查與快取檔案的即時性並使其無效。這個檔案到期程序會在檔案到期中加以解釋。另外,也會從快取中移除無效與未使用的檔案,為新檔案挪出空間。在記憶體回收中會說明這個快取刪除程序。

檔案到期

使快取的物件與內容伺服器上的原始物件保持一致,稱為維護快取的即時性。 針對 Caching Proxy 所快取的每一個文件或其他物件,Caching Proxy 會計算物件到期的時間。

對於 HTTP 頁面,文件的標頭(由內容伺服器所產生)含有到期時間資訊。

因為 FTP 通訊協定不包含相等的到期資訊,Caching Proxy 會依據每一個檔案的 FTP 目錄資訊產生其本身 FTP 檔的 Last-Modified: 標頭,並使用這個資訊來計算到期時間。 如果 Proxy 伺服器無法從 FTP 伺服器取得檔案的目錄資訊,就會使用符合 FTP URL 的預設值。此外,因為 FTP 伺服器沒有標準的日期格式, Caching Proxy 可能無法瞭解某些 FTP 伺服器傳來的日期及時間。在這種情況下會使用 Proxy 伺服器的預設到期時間值。這個程序可以讓 Proxy 以類似的方式, 管理 HTTP 網頁及 FTP 檔案的快取作業。

在下列的其中一個方法中,內容伺服器可以指定到期時間(依照偏好設定順序):

  1. 內容伺服器指定標頭 Cache-control: s-maxage=n。 這個標頭告訴 Proxy 在收到物件之後物件保持新鮮達 n 秒。
  2. 內容伺服器指定標頭 Cache-control: max-age=n。 這個標頭告訴 Proxy 在收到物件之後物件保持新鮮達 n 秒。
  3. 內容伺服器指定標頭:Expires: n。 這個標頭告訴 Proxy 在 n 指定的時間之前物件保持新鮮。
  4. 內容伺服器指出上次修改文件的時間(使用 Last-Modified: n 標頭)。Proxy 伺服器計算自從上次修改文件之後的時間長度, 將這個時間乘以在 Proxy 配置檔設定的「快取上次修改」因子, 並假設文件在這段時間內有效。 比方說,如果內容伺服器指出一星期(7 天)以前修改過文件,而且「快取上次修改」因子是 0.14, 那麼 Proxy 伺服器會假設文件大約一天有效。 設定「快取上次修改」因子的說明,請參閱配置快取即時性
  5. 如果內容伺服器沒有指定上述資訊,Caching Proxy 就會尋找符合現行 URL 的 Cache Default Expiry 設定, 然後使用該設定作為到期時間。設定 Cache Default Expiry 值的說明,請參閱配置快取即時性

依據上述計算到期時間之後,Caching Proxy 會檢查是否有適用於這個 URL 的 Minimum Hold 值。 如果有這個值,而且它指定的時間大於計算的到期時間, 就會使用 Minimum Hold 值指定的時間作為物件的到期時間。 即使 Caching Proxy 計算出文件的到期時間是 0 分鐘也一樣; 因此,為了避免提供陳舊的內容,請小心使用 Minimum Hold 設定。(如果要設定 Minimum Hold 值, 請使用 CacheMinHold 指引或快取配置 -> 快取到期設定URL 到期設定。其餘資訊,請參閱配置快取即時性。)

對在 Time Margin 設定中指定的時間來檢查最終到期時間值。 如果到期時間大於 Time Margin 值,就會快取文件;否則,不會新增文件至快取。(如果要設定 Time Margin 值,請使用 CacheTimeMargin 指引或請參閱配置快取即時性中的指示。)

如果在快取找到這份文件但已經到期的話,Caching Proxy 會對內容伺服器發出稱為 if-modified-since 這項特殊要求。這項要求使內容伺服器只傳送自前次由 Proxy 收到之後有經過修改的文件。 如果文件未經修改,則內容伺服器會傳送一則訊息陳述這件事情, 而不會重新傳送該頁。在本例中,Proxy 提供快取的文件。 針對 FTP 檔案,Proxy 伺服器會模擬 if-modified-since 程序。如果它判斷出該檔案在 FTP 伺服器上尚未經過修改, 便會從快取提供該檔。否則,就從 FTP 伺服器取得較新的版本。

關於快取即時性的其餘資訊

關於 FTP 中的日期

因為 FTP 通訊協定對於日期及時間的定義不像 HTTP 通訊協定那麼嚴格, 所以可能會有許多因素,使得 Proxy 對 FTP 檔案產生的 Last-Modified 標頭,與實際的檔案日期不太一樣。這些因素如下所示:

當 FTP 檔在快取中到期時,Proxy 會為 FTP 檔模擬 HTTP if-modified-since 重新驗證程序。方法是為要求的檔案重新發出 FTP LIST 指令,剖析從 FTP 伺服器傳回的回應的檔案日期, 並且將這個日期與該檔最初擷取時,為 Last-Modified 標頭 Proxy 伺服器所產生的日期相比對。如果檔案日期沒有改變,Proxy 伺服器就會把已快取的 FTP 檔案標示為已經重新驗證, 為它設定新的到期時間,然後從快取中提供該檔,而不是從 FTP 伺服器再次擷取它。如果兩個檔案的日期不同,Proxy 會從 FTP 伺服器重新擷取該檔案,並且快取新檔案日期的檔案備份。

您不一定都能從 FTP 伺服器取得檔案的目錄資訊。 如果 Proxy 無法判斷 FTP 檔的檔案日期, 它便不會為該檔產生 Last-Modified 標頭。而是使用為符合 URL 的 CacheDefaultExpiry 指引所指定的值, 來判斷檔案在快取中的保留期限。 只要檔案一到期,Proxy 便會一律從 FTP 伺服器重新擷取它。 如果您快取中的某些 FTP 檔案似乎經常使用 CacheDefaultExpiry 指引, 而且經常被擷取(造成網路大壅塞),那麼請考慮為這些特定檔指定較大的 CacheDefaultExpiry 值, 使那些特定檔案可以在快取中保留更久一點。

如果要在配置與管理表單中指定快取到期設定,請使用快取配置 -> 快取到期設定 -> 快取檔案的時間限制表單。設定快取檔案到期日的詳細資訊,請參閱檔案到期

配置快取即時性

如果要指定快取檔案的到期時間,請在配置與管理表單中選取快取配置 -> 快取到期設定。下列表單是非常有用的。

URL 型到期時間

使用這份表單,根據檔案的 URL 來設定它們被保留在快取中的最短時間。 您可以為不同 URL 要求範本指定不同快取行為。

如果要編輯 Proxy 配置檔以設定 URL 型檔案到期時間,請參閱附錄B. 配置檔指引中的下列指引參考章節:

預設到期時間設定

快取到期設定表單可讓您指定已使用的檔案或未使用的檔案的預設到期時間設定。您可以為 HTTP、FTP 和 Gopher 檔案設定不同值,也可以為已使用的檔案或未使用的檔案設定不同值。

這份表單也包含其他檔案到期時間選項:

如果要編輯 Proxy 配置檔以設定預設到期時間設定,請參閱下列指引的參考頁:

上次修改的因子設定

上次修改的因子表單用於設定「上次修改的因子」值,Proxy 使用它來為標頭中沒有到期日的快取檔案計算到期日。您可以為符合不同要求範本的檔案設定不同值。 第一個符合的範本用於計算到期日。

如果要直接編輯 Proxy 配置檔來設定「上次修改的因子」,請參閱CacheLastModifiedFactor -- 指定決定到期日的值

快取時間限制

使用快取檔案的時間限制配置表單來設定檔案可以保留在快取中的最大時間。 時間限制是根據要求範本設定,而且您可指定達到時間限制時要捨棄檔案或者重新驗證檔案。 您可使用這些設定維護到期日已無效的檔案,或維護具有非常長的到期日的檔案。

如果要編輯 Proxy 配置檔以設定快取檔案的最大到期時間限制,請參閱下列各項:

記憶體回收

為了保留已快取的受歡迎 URL 以及使系統資源使用量最小化,Caching Proxy 執行稱為記憶體回收的清除處理,在記憶體回收中會從快取移除舊檔案或未使用的檔案,以容納更多現行檔案。

記憶體回收程序會檢查快取目錄中的檔案, 然後嘗試刪除到期的檔案以減少快取大小,並提供空間容納新檔案。 記憶體回收會自動執行,但可以配置一部分設定,依您的需要修改這個程序。

配置記憶體回收

如果要配置記憶體回收,請在配置與管理表單中選取快取配置 -> 記憶體回收設定。 這份表單可讓您設定高臨界值低臨界值,這兩個臨界值決定何時啟動及停止記憶體回收。 當快取記憶體中已使用的空間達到或超過高臨界的百分比設定,就會開始記憶體回收。 要等到快取中的已使用空間百分比等於或小於設定的低臨界值之後,才會停止記憶體回收。

您可以在兩個記憶體回收演算法中選擇。回應時間演算法透過從快取記憶體優先移除大型檔案, 使回應使用者所需要的時間最佳化。頻寬演算法藉由從快取優先移除較小檔案,來最佳化網路頻寬的使用。選擇其中一種演算法或混合使用這兩種演算法。

如果要藉由編輯 Proxy 配置檔來配置記憶體回收,請參考相關的章節以取得有關下列指引的資訊:

將快取代理程式配置為自動重新整理及預載

大部分快取 Proxy 伺服器只在使用者要求某檔案之後才快取該檔案。Caching Proxy 有提供自動快取預載的快取代理程式。您可以指定這個快取代理程式去自動擷取指定的 URL 及/或最受歡迎的 URL,以及在它們被要求之前先將它們放在快取中。

在某些情況下,您必須設定 Proxy 伺服器的主機名稱, 而且識別快取存取日誌之後才會預載快取。 如果要配置快取代理程式,請在配置與管理表單中選取快取配置, 並使用快取預載快取重新整理表單。 請注意:代表查詢結果的檔案(也就是,只有在啟用查詢快取時,其 URL 中包含問號字元 (?) 的檔案)。

自動快取重新整理及預載提供下列優點:

缺點包含:

如果要取得最佳的效率,在伺服器活動量低時以及伺服器忙於處理用戶端要求之前,應該設定執行快取重新整理代理程式。使得檔案在快取中備妥,當使用者第一次要求檔案時便能提供快速服務。 依預設,本地時間每晚凌晨 3 點會啟動快取代理程式。

註:
在執行快取代理程式以重新整理快取記憶體時, 您必須解除註銷 ibmproxy.conf 檔中的 "Proxy http:*" 這一行。否則,錯誤日誌中會產生「403 因規則錯誤而禁止」, 且無法完成重新整理快取記憶體。

設定伺服器主機名稱

在 Linux 和 UNIX 平台中,請指定要預載或重新整理其快取的 Proxy 伺服器的主機名稱。 在 Windows 平台中,只有當要重新整理的 Proxy 伺服器不在本端機器上時,要指定主機名稱(請注意:不可能根據最常存取的檔案重新整理遠端伺服器的快取,因為本端快取代理程式沒有存取遠端伺服器的快取存取日誌之權限。

如果要設定 Proxy 伺服器的主機名稱,請在配置與管理表單中選取快取配置 -> 快取重新整理:識別快取目的地伺服器

使用特定檔案預載快取

如果要使用儲存在特定 URL 的內容來預載快取, 請在配置與管理表單中使用快取配置 -> 快取預載。 在這份表單中,您可以指定要快取代理程式載入的 URL。 快取代理程式啟動時,Proxy 便會擷取這些頁面,不管它們先前是否已在快取中 (在 Proxy 配置檔中 LoadURL 指引指定這些 URL。)這份表單也可用於定義未曾快取其內容的 URL。 這種快取預載不需要存取快取存取日誌。

您可以使用快取預載表單來配置下列選項:

使用經常快取的檔案預載快取

如果要預載最常自動存取的頁面,請使用快取配置 -> 快取重新整理表單。這個功能需要 Proxy 伺服器的「快取存取日誌」。 (可變更日誌的位置與名稱;請參閱監視 Caching Proxy以取得相關的資訊。)可以從「快取存取日誌」自動決定最受歡迎的 URL。 管理者也可以指定要預載到快取的受歡迎頁數。 (在 Proxy 配置檔中已由 LoadTopCached 指引指定這個數目。)

您可以使用快取重新整理表單來配置下列選項:

探查

探查是自動快取重新整理特性中的一個選用性部分。 大部分網頁都有鏈結到含相關資訊的其他頁面, 而且使用者經常遵循從一個頁面鏈結到另一個頁面的路徑,以及從一個網站鏈結到另一個網站的路徑。 探查是快取這些邏輯資訊路徑的方法。 在探查中,快取代理程式會遵循正在載入的頁面上指定層次的超文件 (HTML) 鏈結,而且也快取所有那些鏈結的頁面。鏈結的頁可以與來源頁常駐在同一主機或在其他主機上。『圖 1.』顯示圖例。

圖 1. 探查
探查

為了控制探查處理,管理者可以指定快取代理程式可載入的最大 URL 數目(預設值是 2000)、可以執行的最長時間(預設值是 2 小時),以及可以使用的最大執行緒數(預設值是 4 個)。 管理者也可配置其他控制項。依預設,會為階層中的兩個層次啟用探查,但不准跨越主機啟用。 此外,在要求與要求之間會插入延遲時間。 如果要變更這些設定,請參閱相關的 Proxy 配置檔指引

快取代理程式是以下列順序載入並重新整理快取:

  1. 它載入管理者指定的特定頁面。
  2. 它從快取存取日誌載入受歡迎(經常存取)的頁面。
  3. 如果這時沒有到達最大頁數,就會透過探查載入其他頁面。

請注意:快取代理程式要等到開始跨越鏈結探查之後,才會檢查是否已達到最大頁數。 如果最大頁數值(在 Proxy 配置檔中稱為 MaxURL)小於在步驟 1 及步驟 2 擷取的頁數,就不會擷取鏈結的頁面。

相對於指定的最大 URL 數目,下列這些範例顯示快取代理程式如何處理快取重新整理優先順序及探查(假設這些範例都已配置探查)。

配置檔設定 結果
LoadURL
 http://www.getthis.com/main.html
LoadURL
 http://www.getmetoo.com/welcome.htm
LoadTopCached 30
MaxURLs 50
如果 Cache Access Log 有超過 30 個唯一的 URL, 那麼快取代理程式會根據快取存取日誌擷取 main.html、welcome.htm 以及前 30 個要求的 URL。 因為它尚未達到 MaxURL 值,所以會從已經快取的頁面去擷取及載入最多 18 個鏈結的 URL。
LoadURL
 http://ww.joesmith.edu/favorites.html
LoadURL
 http://www.janesmith.edu/dislikes.html
LoadTopCached 30
MaxURLs 25
如果快取存取日誌有超過 30 個唯一的 URL, 那麼快取代理程式會從快取存取日誌擷取 favorites.html、dislikes.html 以及前 30 個要求的 URL。 不會擷取其他檔案,因為已超過 MaxURL 中的值。
LoadURL http://www.hello.com/hi.htm
LoadURL
 http://www.ballyhoo.com/index.html
LoadTopCached 20
MaxURLs 25
如果快取存取日誌有超過 20 個唯一的 URL, 那麼快取代理程式會從快取存取日誌擷取 hi.htm、index.html 以及前 20 個要求的 URL, 以及從舊頁面擷取最多 3 個鏈結的 URL。不會擷取其他檔案,因為已達到 MaxURL 中的值。

相關的 Proxy 配置檔指引

您也可以在 Proxy 配置檔直接編輯適當指引來配置快取代理程式。快取代理程式相關的 Proxy 配置檔指引,請參閱附錄B. 配置檔指引中的下列參考頁:

手動啟動快取代理程式

如果啟用了自動快取重新整理,那麼快取代理程式會在指定時間自動執行重新整理作業。 不過,您也可隨時從指令行執行快取代理程式。

可執行檔如下:

在 Linux 和 UNIX 平台中,您可以利用 cron 常駐程式,在不同時間自動執行快取代理程式。藉由新增一行到系統 crontab 檔來指定 cron 控制的工作。Linux 和 UNIX 中的指令檔的範例項目如下:

45 16 * * * /usr/sbin/cacheagt

這個指令會在當地時間每天下午 4:45 啟動快取代理程式。想要的話, 您可以使用多重項目,多次執行快取代理程式。如果需要詳細資訊,請參閱作業系統的說明文件中有關 cron 常駐程式的部分。

當使用 cron 常駐程式來執行快取代理程式時,請記得關閉自動重新整理選項, 方法是使用快取配置 -> 快取重新整理配置表單, 或是編輯 Proxy 配置檔。否則,快取代理程式會每日執行一次以上。

使用共用的快取

出現在 Web 的某一點有超過單一伺服器能夠處理的資料流量很常見。 您只要多加幾部伺服器, 就可以解決這個問題了。 不過,使用多重快取 Proxy 伺服器時,某個快取的內容會經常與其他快取的內容重疊。 除了儲存體中不必要的冗餘以外,仍無法達到最大節省頻寬, 因為當要求已快取的檔案之 Proxy 伺服器本身的快取中沒有該檔案時,就會從來源伺服器重新提取該檔案。 雖然使用 Proxy 伺服器的階層鏈可以將重複快取的次數減到最少, 但是這個情況仍會透過提供的伺服器產生額外資料流量,而且這個鏈結中的每個額外鏈結會增加潛伏期。

快取共用可解決這些問題,它允許每個快取與其他快取共用其內容。因為下列事實,而未能達成頻寬節省的結果:

使用多重快取(猶如它們是一個邏輯快取)來提供兩種方法:

可以一起使用 RCA 與 ICP。

遠端快取存取

規劃使用 RCA 時,請考慮下列幾點建議:

如果不符以上任一條件,或不同的組織分別管理屬於陣列成員的不同伺服器時, 遠端快取存取便不適合。

配置遠端快取存取

如果要配置遠端快取存取,請在配置與管理表單中選取快取配置 -> 遠端快取存取。這份表單中的欄位會定義一個具名的陣列,該陣列共用一個邏輯快取記憶體。 輸入每一個陣列成員的必要資訊。

如果要編輯 Proxy 配置檔以配置遠端快取存取,請參閱附錄B. 配置檔指引中的下列指引參考章節:

配置「網際網路快取通訊協定」外掛程式

「網際網路快取通訊協定」外掛程式可讓 Caching Proxy 查詢遵循 ICP 快取, 以尋找 HTML 頁面及其他可快取資源。當 Proxy 伺服器接收到 HTTP 要求時, 會在其本身快取中搜尋資源。如果在本端快取中找不到資源, 且已啟用 ICP 外掛程式,則 Proxy 伺服器會將 URL 要求封裝在 ICP 查詢封包內, 然後將這個封包遞送至所有已識別的 ICP 同層級快取中。如果同層級快取回應其擁有資源,Proxy 伺服器從同層級的快取擷取資源。如果兩個或以上的同層級明確地回應,會處理第一個回應。如果沒有同層級回應命中, 來源伺服器會依據其工作流程繼續處理要求。例如,Proxy 伺服器可以呼叫另一個外掛程式,繼續執行「遠端快取存取」常式(如果已啟用 RCA )或擷取所要求的資源本身。

配置 ICP 外掛程式

您可以編輯 Proxy 配置檔 ibmproxy.conf 來啟動與配置 ICP 外掛程式。 為使用 ICP 外掛程式,必須新增 ServerInit 指引、PreExit 指令或兩者至配置檔的 API 指引區段中,以使用 ICP 外掛程式。使用哪個指引取決於 Caching Proxy 在 ICP 系統中的角色:

如果要建立這些指引,請手動編輯 ibmproxy.conf 檔,或者如果 Proxy 伺服器已正在執行,請連結至配置與管理表單伺服器配置 -> 要求處理程序 -> API 要求處理程序

請注意:原型指引(以備註形式)已新增至 ibmproxy.conf 檔的 API 區段中。這些 API 指引是按照目的排序。 當新增 API 指引來啟用新特性及外掛程式模組時,請依照配置檔原型區段所顯示來排序指引。 另外,必要的話,請解除註解和編輯 API 指引來支援每一個所需要的功能或外掛程式。

ServerInit 和 PreExit 指引有兩個引數:(1) 共用程式庫的完整路徑和 (2) 函數呼叫。 這些引數用冒號 (:) 來定界。 第一個引數為系統特定的,視外掛程式元件安裝位置而定。 第二個引數寫在共用程式庫內,而且必須完全依照所顯示來輸入。

每一個指引都必須出現在 Proxy 配置檔的單一行。

ServerInit path_of_shared_library:icpServer

Linux 和 UNIX 範例:

ServerInit /opt/ibm/edge/cp/internet/lib/plugins/icp/libicp_plugin.so:icpServer

Windows 範例:

ServerInit C:\Program Files\IBM\edge\cp\Bin\plugins\icp\icpplugin.dll:icpServer
PreExit path_of_shared_library:icpClient

Linux 和 UNIX 範例:

PreExit /opt/ibm/edge/cp/internet/lib/plugins/icp/libicp_plugin.so:icpClient

Windows 範例:

PreExit C:\Program Files\IBM\edge\cp\Bin\plugins\icp\icpplugin.dll:icpClient

如果要配置外掛程式的設定,請新增或修改在 Proxy 配置檔中有提供的 ICP* 指引。其餘資訊,請參閱下列指引的說明。

快取動態產生的內容

動態快取功能讓 Caching Proxy 能夠快取動態產生的內容,該內容是以 IBM WebSphere Application Server 所產生的 JavaServer Pages (JSP) 和 Servlet 回應的形式呈現。在應用程式伺服器使用 Caching Proxy 配接卡模組來修改回應, 使得除了在應用程式伺服器的動態快取記憶體中快取回應之外,還能在 Proxy 伺服器快取回應。透過這項特性,可以在網路邊緣快取動態產生的內容, 避免當一個以上的用戶端要求相同內容時,內容主機對應用程式伺服器提出重複要求。

註:
動態快取特性無法使 Proxy 伺服器快取來自 URL 查詢的結果。如果要快取查詢結果,可配置快取過濾器,這部分詳述於控制已快取的部分,並在CacheQueries -- 指定快取含有問號 (?) 的 URL 的回應提供了指引參考文件。無法快取不是從 IBM WebSphere Application Server 的來源伺服器得到的查詢結果。

有時需要啟用查詢快取以使動態快取特性能夠運作,比方說,如果您的 Servlet 使用查詢形式的 URL。Proxy 伺服器會認為任何包含問號 (?) 的 URL 都是一個查詢。

快取動態產生的內容提供下列優點:

應用程式伺服器只匯出完整撰寫的公用網頁供 Proxy 快取。proxy 不快取專屬網頁。 例如,從公用網站動態產生且列出目前天氣預測的網頁可以由 IBM WebSphere Application Server 匯出,然後由 Caching Proxy 快取。不過,Proxy 伺服器無法快取列出使用者購物車內容的動態產生頁面。同時為了快取動態產生的頁面,該頁面的所有子元件必須是可以快取的。

快取的動態檔案的到期方式與一般檔案不同;產生它們的應用程式伺服器可以使它們失效。

在下列情況下會使動態快取記憶體中的項目失效:

藉由為 Caching Proxy 動態快取外掛程式的特定實例產生一則「失效」訊息, 可完成動態快取項目的「失效」作業。當公佈到 /WES_External_Adapter 資源定位器時,Caching Proxy 收到「失效」訊息。然後 Caching Proxy 從快取記憶體清除失效項目。

動態快取需要下列配置步驟。

針對 Proxy 快取配置 IBM WebSphere Application Server

在應用程式伺服器配置動態快取

遵循 IBM WebSphere Application Server 文件中的指示,配置應用程式伺服器使用它的本端動態快取記憶體 (也稱為動態片段快取記憶體)。 動態片段快取記憶體與應用程式伺服器 Caching Proxy 上的外部快取記憶體互動。

配置應用程式伺服器配接卡

您可以使用名稱為「外部快取配接卡」的軟體模組(它與應用程式伺服器一起安裝),IBM WebSphere Application Server 便能與 Caching Proxy 通訊。

註:
請參閱 IBM WebSphere Application Server 支援網站,以取得有關配置動態快取的 TechNote。

配置 Caching Proxy 執行動態快取

如果要讓 Proxy 伺服器能夠快取動態產生的內容(來自 servlet 和 JSP 的結果), 您必須在 Proxy 配置檔 ibmproxy.conf 做兩項變更。第一項變更是啟用動態快取外掛程式模組,第二項變更是配置該模組,使它可以辨識可快取的動態內容的來源。

設定 Service 指引來啟用動態快取外掛程式

「服務」步驟的一個 API 指引是用來啟用動態快取外掛程式。如果要建立這個指引,請手動編輯 ibmproxy.conf 檔, 或者,如果已經執行 Proxy 伺服器,請使用配置與管理表單來選取伺服器配置 -> 要求處理程序 -> API 要求處理程序。 這個指引的內容顯示在本節稍後出現的範例中。

啟用動態快取的原型 Service 指引以備註形式存在於 ibmproxy.conf 檔的 API 段落中。它有標頭 JSP 外掛程式。 請注意:原型 API 指引是按目的排序。 當新增 API 指引來啟用新特性及外掛程式模組時,請依照配置檔原型區段所顯示來排序指引。 您可以選擇性地從原型 API 指引中移除備註字元, 然後依需要編輯它們,來包含對每一個想要的函數或外掛程式的支援。

如下列範例所顯示來設定 Service 指引。(請注意:每一個指引必須出現在 Proxy 配置檔中的單一行;為方便閱讀,這些範例有時包含換行字元。)

如果 Caching Proxy 軟體安裝在非預設的目錄,請以您的安裝路徑替代這些範例中的路徑。

設定 ExternalCacheManager 指引來指定檔案來源

也必須配置每一個 Caching Proxy 去辨識動態產生的檔案的來源。針對每一個在這個 Proxy 伺服器中快取動態產生的內容之應用程式伺服器,新增 ExternalCacheManager 指引至 ibmproxy.conf 檔。 這個指引指定一個在 Proxy 快取結果的 WebSphere Application Server,並為該伺服器的內容設定最大到期時間。 其他詳細資料出現在ExternalCacheManager -- 從 IBM WebSphere Application Server 配置動態快取的 Caching Proxy

在 ExternalCacheManager 指引內使用的伺服器 ID,必須符合在應用程式伺服器的 dynacache.xml 檔的外部快取群組段落中使用的群組 ID。

就上一個範例而言,請新增下列項目到每一個 Proxy 的 ibmproxy.conf 檔。

ExternalCacheManager   IBM-edge-cp-XYZ-1  20 seconds

Caching Proxy 只快取 IBM WebSphere Application Server 的內容,且該 Application Server 的群組 ID 符合 ibmproxy.conf 檔中的 ExternalCacheManager 項目。

調整 Proxy 伺服器快取

當啟用快取時,快取儲存裝置的速度對於 Caching Proxy 效能而言非常重要。本節提供如何選擇快取儲存體的類型及配置快取儲存裝置的建議, 以獲得最佳的效能。

選擇快取儲存體媒體

Caching Proxy 可以使用兩種不同的快取儲存體媒體類型:

記憶體快取提供的檔案擷取速度最快,但記憶體快取大小受限於 Proxy 伺服器機器可用的記憶體數量。 由一或多個原始磁碟分割區所組成的磁碟快取,速度比記憶體快取慢, 但大部分情況下容許較大的快取大小。

最佳化磁碟快取效能

使用於磁碟快取的裝置分割區應該專用於快取;亦即, 這些實體磁碟不可以包含任何其他檔案系統,且不應該用於儲存 Proxy 快取以外的其他用途。 此外,請勿對用於 Proxy 快取的磁碟使用資料壓縮,因為這樣會降低效能。

每一個快取儲存裝置(磁碟或檔案)都會引起 Proxy 伺服器的記憶體額外負荷。 通常使用一整個實體磁碟當做單一的快取裝置會得到最佳效能。 使用 RAID 或其他機制將多重實體磁碟合併成單一的邏輯磁碟,會造成反效果。 如果您要使用多重磁碟,您可以使用快取設定配置表單或編輯 Proxy 配置檔中的 CacheDev,指定它們為多重快取裝置。這個方法允許 Proxy 伺服器控制對多重磁碟讀取及寫入的平行化,且不依賴作業系統或磁碟子系統的效能。

快取記憶體回收

Proxy 伺服器的快取記憶體回收會捨棄快取中到期的檔案,釋放空間來快取新要求的檔案。 當快取中已使用的空間量達到一個稱為高臨界值的管理者指定的限制時, 就自動觸發記憶體回收,然後繼續進行,直到已使用的空間量降低到低臨界值為止。

因為記憶體回收常式使用最少 CPU 資源,不影響未過期快取資料的可用性, 所以不必配置記憶體回收在特定的時間執行。

如果要增進記憶體回收的效能,您可以設定高臨界值及低臨界值。 您亦可配置使用於記憶體回收的演算法類型。 請參閱記憶體回收,以取得修改記憶體回收的詳細資訊。

特定平台最佳化

以下提供的額外建議是針對每一個平台的快取效能最佳化處理。

AIX

在一個磁碟上建立單一的邏輯容體,最好使用全部可用的實體分割區 (PP)。 比方說,如果是 9-GB 磁碟,請建立名為 cpcache1 的 9-GB 邏輯容體。進行格式化,並且使用其原始邏輯容體 /dev/rcpcache1,將磁碟指定為 Proxy 快取裝置。

HP-UX 和 Solaris

在您的快取裝置上,建立一個使用整個磁碟大小的單一分割區(或截塊)。 例如,在一個 9-GB 的磁碟上建立一個 9-GB 分割區,稱為 c1t3d0s0。進行格式化,並且使用其原始裝置 /dev/rdsk/c1t3d0s0,將磁碟指定為 Proxy 快取裝置。

Windows

使用整個磁碟大小建立一個分割區。 例如,在一個 9-GB 的磁碟上建立一個 9-GB 分割區,稱為 i:。進行格式化,並且使用其原始裝置 \\.\i:,將磁碟指定為 Proxy 快取裝置。

配置 Proxy 伺服器的快取以及格式化及指定快取裝置的相關資訊,內含於配置 Proxy 伺服器快取

配置 Caching Proxy 安全性

這個部分提供基本安全性的相關資訊,包括在 Caching Proxy 使用 SSL、啟用加密的硬體,以及使用 IBM Tivoli(R) Access Manager (早期稱為 Tivoli Policy Director)外掛程式和 PAC-LDAP 授權模組。

這個部分包含下列各主題

關於 Proxy 伺服器安全性

伺服器保護設定

Secure Socket Layer (SSL)

啟用密碼硬體支援

使用 Tivoli Access Manager 外掛程式

使用 PAC-LDAP 授權模組

關於 Proxy 伺服器安全性

任何可從網際網路存取的伺服器,都有被不肖使用者入侵其執行之系統的風險。 未經授權的人可能會去猜測密碼、更新檔案、執行檔案或讀取機密資料。 全球資訊網的魅力之一, 就是它的公開性。不過,Web 的開放同時提供了正面使用及濫用。

下列各節說明如何控制在您 Caching Proxy 伺服器上存取檔案的人。

Caching Proxy 支援 Secure Socket Layer (SSL) 連線, 透過這種連線,在用戶端瀏覽器與目的地伺服器(內容伺服器或替代 Proxy 伺服器)之間建立涉及加密及解密的安全傳輸。

當 Caching Proxy 配置為替代時,它可與用戶端、內容伺服器或這兩者建立安全連線。 如果要啟用 SSL 連線,請在配置與管理表單中選取 Proxy 配置 -> SSL 設定。在這份表單上, 選取啟用 SSL 勾選框並指定金鑰環資料庫和金鑰環資料庫密碼檔。

您可以採取幾個基本預防措施來保護您的系統:

註:
如果是用「配置精靈」來配置 Proxy 伺服器,若要啟用 SSL,您必須建立一項對映規則來 Proxy 透過埠 443 接收的要求。 如果需要詳細資訊,請參閱定義對映規則

範例:

Proxy /* http://content server :443

Proxy /* https://content server :443

伺服器保護設定

本章說明如何利用保護設定來保護伺服器上的資料及檔案。 保護設定會根據伺服器接收的要求(特別是要求提出的特定目錄、檔案或檔案類型)來觸發。 在保護設定內,副指引根據保護的目錄或檔案性質,來控制授與或拒絕存取權的方式。

使用配置與管理表單來設定保護

如果要定義保護設定及其套用方式,請在配置與管理表單中選取伺服器配置 -> 文件保護。 使用這份表單以進行下列步驟:

  1. 設定這個保護規則的順序。

    保護規則會依配置表單上表格中所示的順序套用。 通常,規則的列出順序是從特定至通用。

    使用下拉式功能表及按鈕來指定保護規則的位置。

  2. 定義要求範本。

    保護會根據要求範本來啟動,要求範本可與用戶端傳給 Proxy 伺服器的要求內容來做比較。

    要求是完整 URL 的一部分,它附於伺服器主機名稱的後面。 比方說,如果您的伺服器名為 fine.feathers.com, 而瀏覽器使用者輸入 URL http://fine.feathers.com/waterfowl/schedule.html, 則伺服器收到的要求是 /waterfowl/schedule.html。要求範本指定受保護的目錄或檔名或兩者。 例如,某些要求是根據剛才描述的要求範本 (/waterfowl/schedule.html) 加上 /waterfowl/* 和 /*schedule.html 來啟動保護。

    URL 要求範本欄位中輸入要求範本。

  3. 定義保護設定。

    保護設定指示 Caching Proxy 如何處理符合要求範本的要求。您可使用指名的保護設定, 或在文件保護表單中定義一個新設定。

    如果要使用已指名的設定,請按一下指名的保護圓鈕, 然後在提供的欄位中輸入名稱。如果要定義新設定,請按一下列入圓鈕,然後遵循提供的指示進行(請參閱步驟 6)。

  4. 選擇要求器位址(選用)。

    您可以將不同的規則引用到不同伺服器位址的要求。例如, 從指派給您公司的 IP 位址接收日誌檔要求時,您可以將不同的保護設定引用到這些要求。

    註:
    如果要檢查要求器位址,請啟用 DNS 查閱。請參閱DNS-Lookup -- 指定伺服器是否查閱用戶端主機名稱

    如果要將要求器位址併入規則中,請在伺服器 IP 位址或主機名稱欄位中輸入該位址。

  5. 按一下送出

    如果您已使用指名的保護設定,則不需要再做進一步的輸入。 如果您選取的列入保護設定或指定的指名設定不存在,系統會開啟其他表單。

  6. 設定保護詳細資料。

    如果您沒有指定現有的指名保護設定,則會開啟另一份表單,供您指定哪些使用者可存取符合要求範本的文件或目錄,以及使用者可採取哪些動作。

  7. 按一下送出
  8. 重新啟動伺服器。

使用配置檔指引來設定保護

如果要直接編輯 Caching Proxy 配置檔來設定保護,您必須先瞭解下列問題:

預設保護設定

預設 Proxy 配置檔併入一個保護設定,而它需要管理者 ID 和密碼,才能存取 /admin-bin/ 目錄中的檔案。這項設定限制了配置與管理表單的存取權。

Secure Socket Layer (SSL)

Secure Socket Layer (SSL) 是一種會自動將透過網際網路傳送的資訊於傳送前先加密, 並在使用之前於另一端解密的系統。這可保護透過網際網路傳輸的敏感資訊, 如信用卡號碼。

Caching Proxy 使用 SSL 來保護替代伺服器及提供安全遠端管理,如下列各節所述。SSL 也可用來保護與後端伺服器(例如,內容或應用程式伺服器)的連線,以及保護 Proxy 伺服器與其用戶端之間的通訊。

SSL 訊號交換

當安全連線要求從一部機器傳送到另一部機器時,會起始 SSL 保護 -- 比方說,當瀏覽器傳送要求到代理的 Proxy 伺服器時。 如果以要求語法 https:// 代替 http://,則瀏覽器會送出埠 443 上的要求, 這個埠是伺服器接收安全連線要求所在的位置(代替用於常式要求的埠 80)。 如果要在瀏覽器和伺服器之間建立安全階段作業,兩部機器必須執行 SSL 訊號交換來符合密碼規格,並且選取一個用來加密及解密資訊的金鑰。金鑰通常會自動產生,而在階段作業失效時跟著失效。 下列為一般情節(假設為 SSL 版本 3):

  1. 用戶端 Hello

    用戶端可藉由傳送一則說明用戶端加密功能的 Client Hello 訊息,使用 Caching Proxy 來起始一個 SSL 階段作業。

  2. 伺服器 Hello

    伺服器將它的憑證傳給用戶端,並選擇密碼組來進行資料加密。

  3. 用戶端完成

    用戶端傳送用來對加密資料建立對稱加密金鑰的密碼金鑰資訊。 這個金鑰資料即所謂的預先主要機密金鑰,而且以伺服器的公用金鑰(取自伺服器憑證;請參閱金鑰與憑證管理)來對它進行加密。 伺服器及用戶端兩者可從預先主要機密金鑰,衍生讀取及寫入對稱加密金鑰。

  4. 伺服器完成

    伺服器傳送最終確認及整個訊號交換通訊協定的「訊息鑑別碼」(MAC)。

  5. 用戶端驗證

    用戶端傳送訊息來驗證伺服器完成訊息。

  6. 安全資料流程

    如果用戶端證實伺服器完成訊息有效,便開始進行加密資料流程。

使用 Caching Proxy 作為安全連線的端點,可減少內容或應用程式伺服器的負荷。當 Caching Proxy 維護某安全連線時,它會執行加密、解密及金鑰建立,這些都是 CPU 密集的作業。Caching Proxy 也可讓您配置 SSL 階段作業逾時來善用每一個金鑰。

SSL 限制

下列限制適用於 WebSphere Application Server 的 Caching Proxy 中的 SSL:

配置安全遠端管理

您可使用 Secure Socket Layer (SSL) 提供的安全功能及密碼鑑別來執行 Caching Proxy 的遠端管理。這可明顯降低未獲授權者存取 Proxy 伺服器的可能性。

如果要在伺服器遠端管理期間使用 SSL,請使用 https:// 要求來開啟配置與管理表單,而不是使用 http:// 要求。例如:

https://your.server.name/yourFrontPage.html

金鑰與憑證管理

如先前所述,在配置 SSL 之前,您必須設定金鑰資料庫並取得或建立憑證。 憑證可用來鑑別伺服器身分。使用 IBM Key Management 公用程式(有時稱為 iKeyman)來設定憑證檔。這個公用程式屬於 GSKit 軟體的一部分,這個軟體包含於應用程式伺服器中。 GSKit 亦包含用來開啟憑證檔的 Java 型圖形介面。

下列為設定 SSL 金鑰與憑證的一些基本步驟。

  1. 確定已安裝 GSKit。在大部分平台中,通常會以 Caching Proxy 元件自動安裝。套件的名稱為 gsk7ikm(在 i386 的 Linux 系統則是 gsk7ikm_gcc295)。GSKit 通常會安裝在 ibm/gsk7/ 目錄(在 AIX 系統上則為 ibm/gskit/)中。在 Windows 平台中,您也可以從開始功能表存取它。
    註:
    在 Windows 中,如果在使用 InstallShield 時並未安裝 GSkit,請確認安裝媒體目錄的路徑沒有包含空格。
  2. 使用金鑰管理程式來為安全網路通訊建立金鑰,以及接收憑證管理中心的憑證。 您可以決定在等待接收憑證管理中心的憑證時,建立自我簽章憑證。
  3. 建立金鑰資料庫並指定一個金鑰資料庫密碼。
註:
每當解除安裝應用程式伺服器的 Caching Proxy 元件時,也會解除安裝金鑰及金鑰隱藏檔。 為避免再向憑證管理中要求新憑證,請在解除安裝 Proxy 軟體之前, 先在另一個目錄中儲存這兩個檔案的備份。

憑證管理中心

您的公用金鑰必須與憑證管理中心 (CA) 的數位簽章憑證有關聯,而且這個 CA 在伺服器上已被指定為可靠的主要 CA。您可以經由向憑證管理中心 (CA) 供應站提出憑證要求,來購買簽章的憑證。Caching Proxy 支援下列外部 CA:

依預設,下列被指定為可靠的 CA:

使用 IBM Key Manager 公用程式

本節提供使用 IBM Key Manager 公用程式 (iKeyman) 的快速參照。 金鑰管理程式可用來建立 SSL 金鑰資料庫檔案、公用專屬金鑰組合及憑證要求。 在收到 CA 簽章憑證後,使用金鑰管理程式將該憑證置於金鑰資料庫(您建立原始憑證要求之處)中。

GSKit 軟體附帶有關於 IBM Key Manager 和 GSKit 的詳細說明文件。

設定系統來執行金鑰管理程式

在啟動 IKeyman GUI 之前,請先執行下列動作:

  1. 安裝 IBM 或相當於 IBM 的 32 位元 Java 2 Technology 1.4.2 版
  2. 將 JAVA_HOME 設為 Java 目錄的位置。例如:
  3. 從 JAVA_HOME/jre/lib/ext 目錄中移除 ibmjsse.jar 和 gskikm.jar(如果有的話)以及 ibmjcaprovider.jar 檔。
    註:
    如果是 Sun,請用 JAVA_HOME/lib/ext/ 目錄來代替 JAVA_HOME/jre/lib/ext 目錄。
  4. 下列所有 JAR 檔目前都在 GSKit_Installation_path/classes/jre/lib/ext/ 中。
  5. 登錄 IBM JCE、IBM CMS 及/或 IBMJCEFIPS 服務提供者:

    更新 JAVA_HOME/jre/lib/security/java.security 檔,將 IBM CMS 和 IBM JCE 這兩個提供者加在 Sun 提供者後面。例如:

    security.provider.1=sun.security.provider.Sun  
    security.provider.2=com.ibm.spi.IBMCMSProvider  
    security.provider.3=com.ibm.crypto.provider.IBMJCE
    

    您可以在 GSKit_Installation_path/classes/gsk_java.security 中找到一個 java.security 範例檔。

  6. (選用)如果您是 JSSE 使用者且利用 JSSE 來存取加密硬體,請將 ibmpkcs11.jar 安裝在 JAVA_HOME/jre/lib 目錄中, 並遵循 GSKit_Installation_path/classes/native/native-support.zip 中的指示來設定加密硬體的共用程式庫。
    註:
    您也可以在 2002 年 8 月 5 日後發行的 JSSE 套件中找到 ibmpkcs11.jar。如果要登錄 IBMPKCS11 服務提供者, 更新 JAVA_HOME/jre/lib/security/java.security 檔的範例如下:
    security.provider.1=sun.security.provider.Sun  
    security.provider.2=com.ibm.crypto.provider.IBMJCE 
    security.provider.3=com.ibm.crypto.pkcs11.provider.IBMPKCS11  

啟動金鑰管理程式

啟動金鑰管理程式圖形式使用者介面,如下所示:

請注意:如果您在這個階段作業期間建立新的金鑰資料庫檔案,則該檔案將儲存在您啟動金鑰管理程式所在的目錄中。

建立新的金鑰資料庫、密碼及隱藏檔

金鑰資料庫是一種檔案, 伺服器使用它來儲存一個或多個金鑰組合及憑證。您可以對全部的金鑰組合及憑證使用一個金鑰資料庫,或建立多個資料庫。金鑰管理公用程式可用來建立新的金鑰資料庫, 以及指定它們的密碼及隱藏檔。

如果要建立金鑰資料庫及隱藏檔:

  1. 啟動金鑰管理公用程式。
  2. 從主功能表中,選取金鑰資料庫檔案 -> 新增
  3. 新增對話框中,確定已選取檔案類型 CMS 金鑰資料庫。輸入您的金鑰資料庫名稱及檔案位置, 或接受預設值 key.kdb。按一下確定
  4. 密碼提示對話框中,輸入並確認這個資料庫使用的密碼。 按一下確定
  5. 選取隱藏密碼檔的勾選框。出現提示時,請輸入並確認密碼來進行驗證。 顯示下列訊息:DB-Type:CMS key database file keyfile_database_name
    註:
    如果您沒有隱藏密碼檔,則伺服器會啟動但不會接收埠 443。

建立新金鑰資料庫時指定的密碼可保護專屬金鑰。 專屬金鑰是唯一可以簽署文件,或對以公用金鑰加密的訊息進行解密的金鑰。

當指定密碼時,請使用下列指引:

經常變更金鑰資料庫密碼是一種好習慣。 不過,如果您指定了密碼的到期日,請記下變更它的時間。如果密碼在您變更之前就到期了, 則會寫入一則訊息到錯誤日誌中,而伺服器雖會啟動但無法建立安全網路連線。

請遵循下列步驟來變更金鑰資料庫密碼:

  1. 從主功能表中,按一下金鑰資料庫檔案 -> 開啟
  2. 開啟對話框中,輸入您的金鑰資料庫名稱, 或接受預設值 key.kdb。按一下確定
  3. 密碼提示對話框中,輸入您建立的密碼,然後按一下確定
  4. 從主功能表中,按一下金鑰資料庫檔案 -> 變更密碼
  5. 變更密碼對話框中,輸入並確認新密碼。 按一下確定

如果是 Proxy 和 LDAP 伺服器之間的 SSL 連線,請將金鑰資料庫密碼放在 pac_keyring.pwd 檔中。(請注意,pac_keyring.pwd 檔不是 IKeyMan 所產生的隱藏檔。)

建立新的金鑰組合及憑證要求

金鑰資料庫中儲存了金鑰組合及憑證要求。如果要建立公用專屬金鑰組合及憑證要求, 請遵循下列步驟執行:

  1. 如果您尚未建立金鑰資料庫,請遵循建立新的金鑰資料庫、密碼及隱藏檔中的指示進行。
  2. 在金鑰管理公用程式中,從主功能表按一下金鑰資料庫 -> 檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱 (如果要使用預設值,請按一下 key.kdb)。 按一下確定
  4. 密碼提示對話框中,輸入您的密碼,然後按一下確定
  5. 從主功能表中,按一下建立 -> 新增憑證要求
  6. 新增金鑰及憑證要求對話框中,指定下列項目:
  7. 按一下確定。 顯示一則確認訊息。
    A new certificate request has been successfully created
    in the file keyfile_database_name.
  8. 按一下確定。 您輸入的標籤名稱應顯示在個人憑證要求標頭下。
  9. 資訊對話框中,按一下確定。提醒您把這個檔案傳送到憑證管理中心。
  10. 除非您已建立自我簽章憑證(詳細資訊,請參閱下一節「建立自我簽章憑證」), 否則必須將憑證要求傳送到 CA: 憑證要求可能需要 2 至 3 個星期才能完成。當您等待 CA 處理憑證要求時,您可充當自己的 CA 並使用 iKeyman 建立自我簽章的伺服器憑證,在用戶端與 Caching Proxy 伺服器之間啟用 SSL 階段作業。

建立自我簽章憑證

在等待發出憑證的這段時間,使用金鑰管理公用程式建立自我簽章伺服器憑證, 在用戶端和您的 Proxy 伺服器之間啟用 SSL 階段作業。您亦可使用自我簽章憑證來做測試。

遵循這個程序來建立自我簽章憑證:

  1. 如果您尚未建立金鑰資料庫,請遵循建立新的金鑰資料庫、密碼及隱藏檔中的指示進行。
  2. 在金鑰管理公用程式中,從主功能表按一下金鑰資料庫 -> 檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱(或接受預設值 key.kdb)。按一下確定
  4. 密碼提示對話框中,輸入您的密碼,然後按一下確定
  5. 金鑰資料庫內容框中,選取個人憑證, 然後按一下建立新的自我簽章憑證
  6. 建立新的自我簽章憑證視窗中,指定下列項目:
  7. 按一下確定
  8. 新增金鑰檔及隱藏檔至配置設定中,便能完成在伺服器登錄金鑰資料庫 (請參閱建立新的金鑰資料庫、密碼及隱藏檔)。

匯出金鑰

使用這個程序來將金鑰匯出到另一個金鑰資料庫:

  1. 啟動金鑰管理公用程式。
  2. 從主功能表中,按一下金鑰資料庫檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱(或接受預設值 key.kdb)。按一下確定
  4. 密碼提示對話框中,輸入您的密碼,然後按一下確定
  5. 金鑰資料庫內容框中,選取個人憑證, 然後按一下標籤上的匯出/匯入按鈕。
  6. 匯出/匯入金鑰視窗中:
  7. 按一下確定
  8. 密碼提示對話框中,輸入正確的密碼、再次輸入該密碼進行確認,然後按一下確定,將選取的金鑰匯出至另一個金鑰資料庫。

匯入金鑰

如果要從另一個金鑰資料庫匯入金鑰:

  1. 啟動金鑰管理公用程式。
  2. 從主功能表中,選取金鑰資料庫檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱(或接受預設值 key.kdb)。按一下確定
  4. 密碼提示對話框中,輸入您的正確密碼,然後按一下確定
  5. 金鑰資料庫內容框中,選取個人憑證, 然後按一下標籤上的匯出/匯入按鈕。
  6. 匯出/匯入金鑰視窗中:
  7. 按一下確定
  8. 密碼提示對話框中,輸入正確密碼,然後按一下確定
  9. 選取自金鑰標籤清單中,選取正確的標籤, 然後按一下確定

列示憑證管理中心

如果要顯示金鑰資料庫中的可靠憑證管理中心 (CA) 清單,請執行下列動作:

  1. 啟動金鑰管理公用程式。
  2. 從主功能表中,按一下金鑰資料庫檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱(或接受預設值 key.kdb)。按一下確定
  4. 密碼提示對話框中,輸入您的正確密碼,然後按一下確定
  5. 金鑰資料庫內容框中,選取簽章者憑證
  6. 按一下簽章者憑證個人憑證憑證要求,在金鑰資訊視窗中檢視 CA 清單。

接收 CA 憑證

使用這個程序來接收憑證管理中心 (CA) 透過電子郵件寄給您的憑證,依預設, 這個 CA 已被指定為可靠的 CA(請參閱憑證管理中心中的清單)。 如果發出您 CA 簽章憑證的 CA 不是金鑰資料庫中的可靠 CA, 您必須先儲存 CA 的憑證並指定 CA 為可靠的 CA。然後, 您可以接收您的 CA 簽章憑證並置於資料庫中。如果 CA 不是可靠的 CA, 則您無法從其中接收 CA 簽章憑證(請參閱儲存 CA 憑證)。

如果要接收 CA 簽章憑證並置於金鑰資料庫中:

  1. 啟動金鑰管理公用程式。
  2. 從主功能表中,選取金鑰資料庫檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱(或接受預設值 key.kdb)。按一下確定
  4. 密碼提示對話框中,輸入您的密碼,然後按一下確定
  5. 請確定 DB-Type 清單中的檔名為正確檔名。
  6. 金鑰資料庫視窗中,選取個人憑證,然後按一下接收
  7. 從檔案接收憑證對話框中,於憑證檔名文字欄位中輸入一個有效的 base 64 編碼檔。按一下確定
  8. 如果要關閉金鑰管理公用程式,請從主功能表中按一下金鑰資料庫檔案 -> 結束

儲存 CA 憑證

僅可用可靠的 CA 簽署的憑證來建立安全連線。如果要新增 CA 至可靠的 CA 清單中,您必須取得其憑證並將它儲存為可靠的憑證。 在接收憑證到資料庫中之前,請遵循這個程序來從新 CA 儲存憑證:

  1. 啟動金鑰管理公用程式。
  2. 從主功能表中,按一下金鑰資料庫檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱(或接受預設值 key.kdb)。按一下確定
  4. 密碼提示對話框中,輸入您的密碼,然後按一下確定
  5. 金鑰資料庫內容框中,選取簽章者憑證,然後按一下新增
  6. 從檔案新增 CA 的憑證對話框中, 選取 base 64 編碼的 ASCII 資料憑證檔名,或使用瀏覽選項。 按一下確定
  7. 標籤對話框中,輸入標籤名稱並按一下確定
  8. 使用勾選框來指定憑證為經過授信的憑證(預設值)。
    註:
    在建立憑證之後,使用「檢視/編輯」按鈕來檢視勾選框。該勾選框列在畫面上, 但在新增憑證期間並不會顯示出來。

顯示金鑰資料庫中的預設金鑰

顯示預設金鑰項目,如下所示:

  1. 啟動金鑰管理公用程式。
  2. 從主功能表中,按一下金鑰資料庫檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱(或接受預設值 key.kdb)。按一下確定
  4. 密碼提示對話框中,輸入您的密碼,然後按一下確定
  5. 金鑰資料庫內容框中,選取個人憑證,然後選取 CA 憑證標籤名稱。
  6. 金鑰資訊視窗中,按一下檢視/編輯來顯示憑證預設金鑰資訊。

支援的密碼規格

下列表格列示用於 SSL 版本 2 和 3 的加密演算法及雜湊。

產生金鑰組:RSA 512-1024 私密金鑰大小

SSL 版本 2

US 版本 出口版本
RC4 美國 RC4 出口
RC2 美國 RC2 出口
DES 56 位元 不適用
三重 DES 美國 不適用
RC4 出口 不適用
RC2 出口 不適用

SSL 版本 3

US 版本 出口版本
三重 DES SHA 美國 DES SHA 出口
DES SHA 出口 RC2 MD5 出口
RC2 MD5 出口 RC4 MD5 出口
RC4 SHA 美國 NULL SHA
RC4 MD5 美國 NULL MD5
RC4 MD5 出口 NULL NULL
RC4 SHA 56 位元 不適用
DES CBC SHA 不適用
NULL SHA 不適用
NULL MD5 不適用
NULL NULL 不適用

這些 SSL 規格亦可直接編輯 Proxy 配置檔來配置。詳細資訊, 請參閱附錄B. 配置檔指引中有關下列各指引的參考章節:

Caching Proxy 的 128-bit 密碼化

僅 128 位元加密版本的 Caching Proxy 已發表。56 位元版本無法再使用。如果您要更新前一版,您可以將 Caching Proxy 直接安裝到您目前安裝的 128 位元或 56 位元版本。如果您先前是使用 56 位元(出口)瀏覽器,則必須升級至 128 位元瀏覽器,才能在 Proxy 中使用 128 位元加密。

從 56 位元版本的 Caching Proxy 升級到 128 位元版本之後,如果用來加密憑證的金鑰大小設為 1024,則不需要變更配置。不過,如果金鑰大小設為 512,則為使用 Proxy 的 128 位元加密,您必須以 1024 金鑰大小建立新憑證。請利用 IBM Key Manager 公用程式 (iKeyman) 來建立新的金鑰。

  1. 啟動金鑰管理程式。
  2. 從主功能表中,按一下金鑰資料庫檔案 -> 開啟
  3. 開啟對話框中,輸入您的金鑰資料庫名稱 (如果要使用預設值,請按一下 key.kdb),然後按一下確定
  4. 如果出現密碼提示對話框,請輸入您的密碼,然按一下確定
  5. 從主功能表中,按一下建立 -> 新增憑證要求
  6. 新增金鑰及憑證要求視窗中,指定下列項目:
  7. 按一下確定

請參閱金鑰與憑證管理,以取得 IBM Key Manager 公用程式的詳細說明。

請注意:本產品版本不支援在 SuSE Linux 上加密。

啟用密碼硬體支援

遵循這個程序,使 SSL 訊號交換常式能夠卸載至密碼硬體卡:

  1. 根據製造商指示來安裝密碼硬體卡。
  2. 為 Caching Proxy 啟用 SSL。如果需要詳細資訊,請參閱Secure Socket Layer (SSL)
  3. 手動編輯 ibmproxy.conf 配置檔中的 SSLCryptoCard 指引。配置與管理表單中沒有出現這個指引的項目。如果需要詳細資訊,請參閱 SSLCryptoCard 指引參考(SSLCryptoCard -- 指定已安裝的密碼卡)。

使用 Tivoli Access Manager 外掛程式

Tivoli Access Manager(早期稱為 Tivoli Policy Director)提供了一個 Caching Proxy 外掛程式,它可讓 Caching Proxy 利用 Access Manager 來進行鑑別和授權。這個外掛程式可讓使用 Access Manager 進行 Web 存取控制的企業加入 Edge 技術,而不需要為 Proxy 伺服器重複設定個別的授權架構。

如果需要 Tivoli Access Manager 的其他資訊,請檢視產品網站: http://www.ibm.com/software/tivoli/products/。如果需要軟硬體需求以及安裝 Access Manager 外掛程式的相關資訊,請參閱 Tivoli Access Manager 隨附的說明文件。

註:
Tivoli Access Manager 外掛程式可能不支援 Red Hat Linux。請洽詢 Tivoli,以得知 Linux 平台的現行支援資訊。

配置

Access Manager 外掛程式提供了 Caching Proxy 的設定 Script。

使用配置 Script 前所需的步驟

執行 Script 之前,執行下列步驟:

使用配置 Script

這個設定 Script 的名稱為 wslconfig.sh, 位於 /opt/pdweb-lite/bin/ 目錄下。 當出現提示時,輸入 Access Manager 管理者 ID 和 LDAP 管理者名稱。

配置 Script 會自動執行下列步驟:

啟動 Caching Proxy 和 Access Manager 外掛程式

在配置 Proxy 伺服器和 Access Manager 外掛程式之後,請使用指令 wslstartwte 而非 ibmproxy start 來啟動 Proxy 伺服器。wslstartwte 指令會自動載入起始設定 Access Manager 外掛程式所需的環境變數。 啟動 Proxy 伺服器時,如果您未使用 wslstartwte,則會出現有關 Access Manager 外掛程式的錯誤訊息。在使用這個外掛程式時,對應的停止指令 ibmproxy stop 仍然有效。

使用 PAC-LDAP 授權模組

概觀

PAC-LDAP 授權模組可讓 Caching Proxy 在執行授權或鑑別常式時存取「輕裝備目錄存取通訊協定」(LDAP) 伺服器。 這個模組是由兩個元件集組成:可新增 LDAP 功能到 Caching Proxy API 的一對共用程式庫, 以及一個「策略鑑別控制」(Policy Authentication Control,PAC)常駐程式。快取 Proxy 啟動時,ibmproxy.conf 檔內的 ServerInit 指引會指示共用程式庫起始設定一個或多個 PAC 常駐程式。共用程式庫會讀取 paccp.conf 檔以判斷 PAC 常駐程式的數目和性質。 在起始設定期間,常駐程式會讀取 pac.conf 檔以取得配置指引, 並讀取 pacpolicy.conf 以取得策略資訊。 然後,ibmproxy.conf 檔內的 Authentication 指引會指示 Proxy 伺服器在每次需要鑑別時呼叫共用程式庫, 或是會有一個 Authorization 指引在標準 HTTP 要求處理期間使用快取 Proxy 工作流程。

鑑別

鑑別程序會判斷所提供的一組認證 - 使用者名稱和密碼 - 是否有效。這個程序包括確認使用者在登錄中, 且提供的密碼符合儲存在登錄中的密碼。這些動作會在鑑別步驟期間,利用 PAC-LDAP 模組來執行。

啟用 PAC-LDAP 授權模組進行鑑別時,它會變成可從其中擷取使用者 ID、密碼和群組的預設儲存庫。 當 HTTP 要求通過快取 Proxy 工作流程時,每一個 Protect 指引都會比較要求的 URL 與其要求範本。 如果符合,Protect 指引會呼叫保護綱目,該綱目包含伺服器 ID、要使用的鑑別類型、套用到要求用戶端的遮罩規則,以及密碼檔和群組檔案的位置。 如果沒有定義密碼檔,那麼會透過 PAC-LDAP 授權模組擷取使用者 ID 和密碼。 類型 0、1、2 和 3 策略定義鑑別架構。 如果鑑別通過,則服務要求;否則,快取 Proxy 會將 401 錯誤傳回用戶端。

授權

授權程序會判斷使用者是否有必要的許可權來存取受保護的資源。當您使用 PAC-LDAP 模組時, 這個動作包括套用位於 pacpolicy.conf 檔中,用於 HTTP 要求的授權規則。

啟用 PAC-LDAP 授權模組進行授權時,會將 pacpolicy.conf 檔內的授權規則套用到 HTTP 要求。 當 HTTP 要求通過快取 Proxy 工作流程時,每一個 Protect 指引都會比較要求的 URL 與其要求範本。如果符合,Protect 指引會呼叫保護綱目。 在這種情況下,保護綱目就是 PAC-LDAP 授權模組所使用的授權常式。Authorization 指引會比較要求的 URL 與其要求範本,如果符合,就會呼叫 PAC-LDAP 授權模組。 在 pacpolicy.conf 檔中所定義的類型 4 策略進一步修正不同 URL 要求所需要的鑑別。

輕裝備目錄存取通訊協定 (LDAP)

LDAP 以最不消耗系統資源的方式對 X.500 目錄提供交談式存取。IANA 將 TCP 埠 389 和 UDP 埠 389 指定給 LDAP。 如果需要詳細資訊,請參閱 RFC 1777,它會定義 LDAP。

安裝

安裝 WebSphere Application Server 6.0.1 版的 Caching Proxy 系統時,會自動安裝 PAC-LDAP 授權模組的所有元件。在 Linux 和 UNIX 系統中,Caching Proxy 程式庫 (./lib/) 目錄、PAC-LDAP 授權模組程式庫 (./lib/plugins/pac/) 目錄、二進位 (./bin/) 目錄,以及配置 (./etc/) 目錄都建立在 /opt/ibm/edge/cp/ 目錄內。然後從 /usr/lib/、/usr/sbin/ 和 /etc 目錄建立這些產品特定目錄的符號鏈結。

目錄結構

Linux 和 UNIX 目錄 Windows 目錄 內容
/opt/ibm/edge/cp/ \Program Files\IBM\edge\cp\ Caching Proxy 基本目錄 (cp_root )
cp_root/sbin/ \Program Files\IBM\edge\cp\Bin\ Caching Proxy 二進位及 Script
/usr/sbin/ cp_root/sbin/ 的符號鏈結
cp_root/etc/ \Program Files\IBM\edge\cp\etc\ Caching Proxy 配置檔
/etc/ cp_root/etc/ 的符號鏈結
cp_root/lib/ \Program Files\IBM\edge\cp\lib\ plugins\ Caching Proxy 程式庫
cp_root/lib/ plugins/pac/ \Program Files\IBM\edge\ cp\lib\plugins\pac\ PAC-LDAP 授權模組程式庫
/usr/lib/ cp_root/lib/ 與 cp_root/lib/ plugins/pac/ 的符號鏈結
cp_root/server_root/pac/data/ \Program Files\IBM\ edge\cp\server_root\pac\data\ PAC-LDAP 授權模組資料儲存體
cp_root/server_root/ pac/creds/ \Program Files\IBM\ edge\cp\server_root\pac\creds\ PAC-LDAP 授權模組認證

LDAP 外掛程式檔案

Linux 和 UNIX 檔案名稱 Windows 檔案名稱 說明
libpacwte.so pacwte.dll 共用程式庫
libpacman.so pacman.dll 共用程式庫
pacd_restart.sh pacd_restart.bat PAC 常駐程式重新啟動 Script
paccp.conf, pac.conf, pacpolicy.conf paccp.conf, pac.conf, pacpolicy.conf 配置與策略檔案

安全 PACD-LDAP 伺服器連線的其他需求

LDAP 用戶端套件需要 GSKit

如果要在 PACD 常駐程式和 LDAP 伺服器之間啟用 Secure Socket Layer (SSL) 連線,您應該安裝 LDAP 用戶端套件所需要的 GSkit 套件。 依預設,Caching Proxy 機器需要 GSkit 7,也會提供 GSkit 7,但它可能不是機器中的 LDAP 用戶端所需要的版本。 在相同機器中,有可能在不同程序上使用不同的 GSkit 版本。

請將 GSkit 金鑰檔放在 $pacd_creds_dir/pac_keyring.kdb 中,將密碼放在 $pacd_creds_dir/pac_keyring.pwd 中。

註:
如果需要在 LDAP 伺服器上的 GSKit 需求資訊,請參閱下列網站上的 IBM Directory Server 說明文件:http://www.ibm.com/software/tivoli/products/directory-server/

必須為 Linux 系統設定 LD_PRELOAD 環境變數

在 Linux 系統上,必須按照下述來配置 LD_PRELOAD 環境變數, 才能夠在 PACD 常駐程式與 LDAP 伺服器之間啟用 SSL 連線。設定變數成為下列值:

LD_PRELOAD=/usr/lib/libstdc++-libc6.1-1.so.2

這一節先前所參照的 GSKit 需求也適用於 Linux 系統。

編輯 ibmproxy.conf 檔以啟用 PAC-LDAP 授權模組

必須將 ServerInit、Authorization 或 Authentication 以及 ServerTerm 這三個指引新增到 ibmproxy.conf 檔的 API 指引區段, 才能起始設定 PAC-LDAP 授權模組。如果要建立這些指引, 請手動編輯 ibmproxy.conf 檔,或是如果 Proxy 伺服器已經在執行, 以網際網路瀏覽器連接至「配置與管理」表單, 並開啟「API 要求處理程序」表單(按一下伺服器配置 -> 要求處理程序-> API 要求處理程序)。 每一個指引都必須出現在 Proxy 配置檔中的單一行,無論本節中所給定的範例是否為了方便閱讀而換行。

請注意:原型指引(以備註型式)是在 ibmproxy.conf 檔的 API 區段中所給定的。這些 API 指引是按照目的排序。 當新增 API 指引來啟用新特性及外掛程式模組時,請依照配置檔原型區段所顯示來排序指引。 另外,必要的話,請解除註解和編輯 API 指引來支援每一個所需要的功能或外掛程式。

ServerInit 指引有三個引數:(1) 共用程式庫的完整路徑、(2) 函數呼叫, 以及 (3) paccp.conf 檔的完整路徑。以冒號 (:) 來區隔第一個和第二個引數。以空格來區隔第二個和第三個引數。 第一個和第三個引數是系統專屬的引數,根據安裝外掛程式元件的位置而定。 第二個引數是寫在共用程式庫內,而且必須如所顯示那樣地輸入。 使用「API 要求處理程序」表單建立 ServerInit 指引時,必須在函數名稱欄位中輸入第二個和第三個引數。會在 IP 範本直欄中顯示第三個引數。

Authorization 指引有三個引數:(1) 要求範本、(2) 共用程式庫的完整路徑, 以及 (3) 函數名稱。會比較 HTTP 要求與要求範本,以判斷是否呼叫應用程式函數。 要求範本可以包含通訊協定、網域和主機,前面可以加上一條斜線 (/), 而且可以使用星號 (*) 作為萬用字元。例如,/front_page.html、http://www.ics.raleigh.ibm.com、/pub*、/* 和 * 均有效。 函數名稱是在程式內給予應用程式函數的名稱。 它是寫在程式內的而且必須如所顯示那樣地輸入。 以空格來區隔前兩個引數。 以冒號 (:) 來區隔後兩個引數。

Authentication 指引有兩個引數:(1) 共用程式庫的完整路徑和 (2) 函數名稱。這些引數用冒號 (:) 來定界。 第一個引數是系統專屬的引數,而且根據安裝共用程式庫的位置而定。 當利用 Caching Proxy 作為反向 Proxy 時,第一個引數的 URL 範本開頭必須是文件根目錄 (/)。 第二個引數寫在共用程式庫內,而且必須完全依照所顯示來輸入。

ServerTerm 指引有兩個引數:(1) 共用程式庫的完整路徑和 (2) 函數名稱。 這些引數用冒號 (:) 來定界。 第一個引數是系統專屬的引數,而且根據安裝共用程式庫的位置而定。 第二個引數是寫在共用程式庫內,而且必須如所顯示那樣地輸入。 關閉 Proxy 伺服器時,這個指引會終止 PAC 常駐程式。如果常駐程式的擁有者與 Proxy 伺服器的擁有者不同, Proxy 伺服器可能無法停止常駐程式,在這種情況下管理者必須手動停止常駐程式。

ServerInit path_of_shared_library:pacwte_auth_init path_of_conf_policy_file

Linux 和 UNIX 範例:

          ServerInit /usr/lib/libpacwte.so:pacwte_auth_init /etc/pac.conf

Windows 範例:

ServerInit C:\Progra ~1\IBM\edge\cp\lib\plugins\
  pac\pacwte.dll:pacwte_auth_init C:\Progra ~1\IBM\edge\cp
授權要求範本 path_of_shared_library:pacwte_auth_policy

Linux 和 UNIX 範例:

Authorization http://* /usr/lib/libpacwte.so:pacwte_auth_policy

Windows 範例:

授權 http://* C:\Program Files\IBM\edge\cp\lib\plugins\
          pac\pacwte.dll:pacwte_auth_policy
鑑別 BASIC path_of_shared_library:pacwte_auth_policy

Linux 和 UNIX 範例:

Authentication BASIC /usr/lib/plugins/pac/libpacwte.so:pacwte_auth_policy

Windows 範例:

鑑別 BASIC C:\Program Files\IBM\edge\cp\lib\plugins\
          pac\pacwte.dll:pacwte_auth_policy
ServerTerm path_of_shared_library:pacwte_shutdown

Linux 和 UNIX 範例:

          ServerTerm /usr/lib/libpacwte.so:pacwte_shutdown

Windows 範例:

ServerTerm BASIC C:\Program Files\IBM\edge\cp\lib\plugins\
          pac\bin\pacwte.dll:pacwte_shutdown

編輯 PAC-LDAP 授權模組配置檔

必須使用文字編輯程式來手動編輯 PAC-LDAP 授權模組配置檔和策略檔。以冒號 (:) 來區隔指引名稱與它的第一個引數。以逗點 (,) 來區隔多個引數。配置和策略檔包含註解以協助編輯。 下面顯示重要策略指引。

paccp.conf

在起始設定 Caching Proxy 期間,paccp.conf 由共用程式庫讀取, 它包含會啟動的每一個 PAC 常駐程式的定義 ([PAC_MAN_SERVER] 段落)。 每一個 PAC 常駐程式必須有它自己的 [PAC_MAN_SERVER] 段落。

[PAC_MAN_SERVER]
hostname:                    # name of PAC daemon
port:                        # port pacd is listening on

[PACWTE_PLUGIN]
hostname_check:[true|false]  # enables DNS lookup. Must have
                             # DNS lookup turned on for ibmproxy to work.

pac.conf

pac.conf 檔指定 PAC 常駐程式嘗試連接的 LDAP 伺服器。

[PAC_MAN_SERVER]
hostname:                    # name of PAC daemon
port:                        # port pacd is listening on
conn_type:ssl                # comment out if you do not use SSL
authentication_sequence: [primary|secondary|none]
authorization_sequence:  [primary|secondary|none]

[LDAP_SERVER]
hostname:                    # LDAP Server hostname
port:389                     # Port LDAP is listening on
ssl_port:636                 # SSL port used by the LDAP server
admin_dn:                    # User with permission to access the LDAP server
                             # specify admin_dn:NULL to enable anonymous binding
search_base:                 # Portion of LDAP tree to search for policy info
                             # If not required, specify search_base:NULL
search_key:                  # ID field to search

[CACHE]
cred_cache_enabled [TRUE|FALSE] # turn credentials cache on
cred_cache_min_size:100      # minimum number of credentials to cache in pacd
cred_cache_max_size:64000    # maximum number of credentials to cache in pacd
cred_cache_expiration:86400  # when a credential expires
policy_cache_enabled:[TRUE|FALSE] # turns policy cache on/off
policy_cache_min_size:100    # min. number of policy related items to cache
policy_cache_max_size:64000  # max. number of policy related items to cache
policy_cache_expiration:86400 # when a policy related item expires

pacpolicy.conf

每一個 LDAP 策略使用配置和策略檔內的下列範本。 每一個策略的開頭必須是以方括弧([])括住的大寫關鍵字 POLICY。

[POLICY]
default_policy:[grant|deny]  # describes the default policy for users
                             # that are not described in the POLICY section
pac_client_hotname:          # the instances of Caching Proxy that are allowed
                             # to use a policy list
id:                          # the id for the LDAP entry or ip/hostname
                             # (wildcard supported, such as *.ibm.com)
grant:[true|false]           # true means to grant access, false means
                             # to deny access
type:[0|1|2|3|4]             # 0 LDAP entry that is a group,
                             # 1 LDAP entry that is not a group,
                             # 2 IP address
                             # 3 hostname
                             # 4 URL
propagate:[true|false]       # true means that the access rights (grant
                             # or deny) will be propagated to all
                             # descendants or members
stop_entry:[entry|NULL]      # Propagation of the access right stops
                             # at this entry. If the id is a group,
                             # stop_entry must be set to NULL.
                             # stop_entry may be applied to an IP
                             # address or hostname. Each stop_entry
                             # must be on its own line
exception_entry:[entry|NULL] # Assignment of the access right skips
                             # these entries, but continues through their
                             # subtrees. This may be a list of entries.
                             # exception_entry may be applied to a group,
                             # IP address, or hostname. Each
                             # exception_entry must be on its own line.
Exception_type:
Exception:

唯有 IP 位址的最後一個位置或 idstop_entry 指引中主機名稱的第一個位置才支援萬用字元 (*)。exception_entry 不支援萬用字元。 任何欄位中的任何 LDAP 項目都不支援萬用字元。

支援多個策略,如果發生策略衝突則 false 值永遠優先。 換句話說,任何策略中的單一拒絕都會攔阻存取。 在配置和策略檔中列示的策略順序並無關聯而且不會建立優先順序。

關於一組策略範例,請參閱配置檔目錄中的 pacpolicy.conf 檔。

註:
巢狀群組不繼承來自母項群組的策略。 對群組強制實施的唯一策略就是對於身為明確成員的群組所實施的那些策略。

建立 pac_ldap.cred

/cp_root/server_root/pac/creds 中建立純文字檔 pac_ldap.cred。這個檔案包含對應於 admin_dn 指引(位於 pac.conf 檔)中之使用者名稱的密碼。

註:
如果要啟用匿名連結,請將 pac.conf 中的 admin_dn 指引改成 admin_dn:NULL,並在 pac_ldap.cred 檔中放一個虛擬字串。

PAC 常駐程式第一次讀取這個檔案時會加密密碼。

如果要在 Linux 和 UNIX 平台中建立 pac_ldap.cred 檔,請發出下列指令:

cd cp_root/server_root/pac/creds
echo "password" > pac_ldap.cred
chown nobody pac_ldap.cred
chgrp nobody pac_ldap.cred
(在 SuSE Linux 上,請使用 chgrp nogroup pac_ldap.cred。)

如果要在 Windows 平台中建立該檔案,請將密碼輸入文字檔中,並將該檔案儲存在 server_root\pac\creds\ 目錄下。

啟動及停止 pacd

LDAP 授權常駐程式以 pacd 程序的方式執行。 您可以利用提供的 Script 來重新啟動 LDAP 授權常駐程式,而不需中斷 Caching Proxy。請執行 pacd Script,如下所示:

註:
在快取 Proxy 伺服器關閉之後,您可以在 AIX 系統上使用 stopsrc -ibmproxy 指令,或是在 HP-UX、Linux 和 Solaris 系統上使用 ibmproxy -stop 指令,讓 pacd 程序繼續執行。使用 kill 指令可以安全地關閉 pacd 程序,如下所示:
kill -15 pacd_process_ID

在 HP-UX 上:PAC-LDAP 外掛程式和 pacd 可能不會在執行時期載入其所有相依的共用程式庫。在使用它們之前,請先確定系統變數已設定如下:

SHLIB_PATH=/usr/lib:/usr/IBMldap/lib
PATH=/usr/IBMldap/bin:$PATH
PATH=/usr/IBMldap/bin  
/usr/IBMldap/

是 LDAP 用戶端在 HP-UX 上的預設安裝路徑。如果 LDAP 用戶端安裝在不同的位置上,請據以調整 PATH 和 SHLIB_PATH。如果設定這些變數,可能會發生下列錯誤:

在 AIX 中:當利用 IBM Tivoli Directory Server 5.2 來啟動 pacd 時,可能無法載入 PAC-LDAP 模組,且會發生下列錯誤:

exec(): 0509-036 無法載入 /usr/sbin/pacd 程式,因為發生下列錯誤:
        0509-022 無法載入 /usr/lib/libpacman.a 模組。
        0509-150 無法載入相依模組 libldap.a。
        0509-022 無法載入 libldap.a 模組。

如果要暫時解決這個問題,請建立下列符號:ln -s /usr/lib/libibmldap.a /usr/lib/libldap.a

註:
在配置 Caching Proxy 來使用 LDAP 鑑別之後,它會顯示下列錯誤:
無法擷取 Uid 值,回覆碼:3
即使 LDAP 鑑別能夠正確運作,也會出現這個錯誤,您可以不處理它。

監視 Caching Proxy

這個部分提供您使用日誌與「伺服器活動監視器」來監視 Caching Proxy 的指令。

這個部分包含下列各主題

配置日誌

使用伺服器活動監視器

配置日誌

如果要自訂日誌,您可以使用配置與管理表單或在 Proxy 配置檔中編輯指引。 您可設定下列選項:

關於日誌

除了事件日誌及錯誤日誌之外,Caching Proxy 還可以建立三種類型的存取日誌:

Caching Proxy 會在每日午夜建立新日誌檔。如果 Proxy 在午夜時未執行, 則會在那天第一次啟動它時建立新日誌。您可以對每個日誌檔指定目錄及檔名前置符號; 所建立的每一個日誌檔也會包含格式為 .Mmmddyyyy 的日期字尾(例如,.Apr142000)。

由於日誌會佔用大量的空間,所以請考慮將日誌檔分別儲存在與快取及作業系統分開的儲存裝置上,以避免錯誤發生。 此外,也請考慮如維護及保存日誌中所指定的程序來配置日誌維護常式。

日誌檔名及基本選項

如果要指定 Proxy 伺服器日誌的基本配置,請在配置與管理表單, 選取伺服器配置 -> 記載 -> 日誌檔。 指定所要使用的每個日誌檔之路徑及檔案名稱。 每一個日誌的現行檔名會顯示在對應的文字框內;如果您尚未指定路徑,則會顯示預設路徑。

記錄到 Proxy 日誌的資訊並不會自動寫入系統日誌中,但可將 Caching Proxy 配置成除了寫入至它自己的日誌之外還寫入至系統日誌,或配置成只寫入系統日誌。 請在日誌檔表單中,選取將資訊載至 Syslog 勾選框。 請注意:選擇這個選項前必須建立系統日誌。

如果要指定將 Proxy 伺服器日誌資訊只寫入至系統日誌中,則必須編輯 Proxy 配置檔; 請參閱LogToSyslog -- 指定是否傳送存取資訊給系統日誌(只限 Linux 和 UNIX)的參考章節。

相關的配置檔指引

如果要使用 Proxy 配置檔來設定日誌,請參閱附錄B. 配置檔指引中的下列指引參考章節:

存取日誌過濾器

存取日誌記錄主機、proxy 及快取的活動。 對於您 Proxy 收到的每一個存取要求,將在適當的存取日誌中建立一個項目,包含下列資訊:

存取錯誤會記錄到伺服器的錯誤日誌中。

控制記載內容的理由

以下是限制記載內容的一些理由:

存取日誌以外的資訊不會被記錄在任何存取報告中,而且無法供未來使用。因此,如果您不確定需要追蹤多少存取資訊,則在獲得監視伺服器的經驗之前, 引用互斥過濾器時要保守一點。

配置存取日誌過濾器

存取日誌項目可根據以下任何屬性來過濾:

如果要指定過濾器,請在配置與管理表單中選取伺服器配置 -> 記載 -> 存取日誌排除項目。僅指定您要的排除項目。不需要填寫全部種類。

按一下送出

相關的配置檔指引

如果要使用 Proxy 配置檔來設定存取日誌過濾器,請參閱附錄B. 配置檔指引中的下列指引參考章節:

預設日誌設定

維護及保存日誌

Caching Proxy 使用外掛程式來管理日誌。有關進一步的資訊, 請參閱附錄B. 配置檔指引中的配置檔指引參考頁:Midnight -- 指定要用來保存日誌的 API 外掛程式

您可以指定如何保存及移除每日日誌。基本選項為:

依預設,維護代理程式不會刪除今天和前幾天的日誌。 維護代理程式不會壓縮今天和前幾天的快取存取日誌。

如果要配置日誌維護,請在配置與管理表單中選取伺服器配置 -> 記載 -> 日誌保存。在這份表單中,使用下拉方框指定維護方法。

相關的配置檔指引

如果要使用 Proxy 配置檔來配置日誌保存,請參閱附錄B. 配置檔指引中的下列指引參考章節:

日誌檔情節

下列範例顯示如何自訂日誌來符合您的需求。 假設您剛購買及安裝了 Caching Proxy。您想要設定伺服器以下列需求記載存取及錯誤資訊:

如果要配置 Caching Proxy 使日誌符合這些基準,請在配置與管理表單中選取伺服器配置 -> 記載

  1. 選擇性地,您可以選取「日誌檔」表單來指定存取日誌檔的路徑。(已提供預設路徑。)
  2. 使用日誌保存表單來指定保存檔案的方法:
  3. 使用存取日誌排除項目表單來過濾日誌項目,如下所示:

遵循上述指示在 Proxy 配置檔中產生下列行:

LogArchive purge
PurgeAge 30
PurgeSize 25
AccessLogExcludeURL *.gif
NoLog 130.128.*.* 
AccessLogExcludeReturnCode 300

使用伺服器活動監視器

Caching Proxy 的「伺服器活動監視器」會顯示伺服器及網路效能統計值、伺服器及網路狀態,以及存取日誌項目。這個監視器可在遠端使用,而且不必在執行該 Proxy 伺服器的同一部機器上。 「伺服器活動監視器」會在預設狀況下啟用,並且不需要配置。

開啟「伺服器活動監視器」有兩個方法:

不同於配置用戶端中的其他表單,這個種類中的表單不設定伺服器的配置, 只是顯示有關於伺服器用法的資料。 這些表單提供相當多詳細資訊,無法全顯示在單一主控台視窗中。

下列各節說明伺服器活動監視器提供的資訊類型,並建議如何使用這個資訊來調整效能。

伺服器活動監視器有下列幾頁:

每一頁各有一個重新整理按鈕,可以用來更新頁面資訊。

活動統計值

表 4.』顯示活動統計值頁面的範例。

表 4. 活動統計值
活動統計值
連線 1 作用中,431 最大值
回應時間 無法提供
產量 0 連線/秒
今天處理的要求數 0
處理的要求總數 114
要求錯誤數 3

您可以使用這些伺服器活動統計值,從存取要求數、回應時間、產量、今日處理的要求、處理的要求總計以及錯誤等方面來監視伺服器資料傳輸。 下列配置變更會影響活動頁面的統計值。

網路統計值

表 5.』顯示網路統計值頁面的範例。

表 5. 網路統計值
網路統計值
送出的資料: 1K 位元組/秒
進來的資料: 1K 位元組/秒
儲存的頻寬: 3K 位元組(0K 位元組/秒)
令天儲存的頻寬: 0K 位元組(0K 位元組/秒)

網路統計值表單提供關於 Proxy 執行所在之網路的相關資訊, 包括已傳送及收到位元組的資料速度。

存取統計值

存取統計值頁面顯示存取日誌中最新的 20 個項目。 這個頁面顯示「Proxy 存取日誌」(黑色類型)及快取存取日誌(藍色類型)中的最新項目。 您可以自訂記載的項目來自定顯示資訊。 關於存取日誌統計值的進一步資訊,請參閱存取日誌過濾器

Proxy 存取統計值

Proxy 存取統計值表單提供關於 Proxy 活動的相關資訊, 如已要求哪些 URL,以及是否由快取來提供這些 URL。URL 後面接的是傳送給用戶端的回覆碼,以及檔案的位元組大小。 下列設定可以增進 Proxy 存取統計值:

快取統計值

如果啟用了快取,則快取統計值頁面會顯示最新的快取存取資訊。 它提供快取及索引的相關資訊,包括下列資訊:

許多快取配置選項會變更快取統計值結果(請參閱配置 Proxy 伺服器快取)。

快取重新整理摘要

如果已配置快取代理程式來預載檔案到快取中,則快取重新整理摘要頁面會顯示快取代理程式最新執行的資訊。 快取代理程式至少必須要執行一次, 才能顯示資訊。 如果要變更快取重新整理代理程式的執行方式,請考慮下列事項:

附錄與後記

附錄A. 使用 Caching Proxy 指令

主題提供有關 Proxy 伺服器指令的參照。

cgiparse 指令

目的

使用 cgiparse 指令,來剖析 CGI Script 的 QUERY_STRING 環境變數。 如果沒有設定 QUERY_STRING 環境變數, 這個指令便會從其標準輸入中,讀取 CONTENT_LENGTH 字元。 所有傳回的輸出,都會寫入其標準輸出中。

語法

      cgiparse -Flag [Modifier]

參數

旗號、它們的單字元同義字 (-k -f -v -r -i -s -p -c -q -P) 及它們的功能,包括如下:

-keywords | -k
剖析 QUERY_STRING 為關鍵字。關鍵字會被解碼並一行一字地被寫入標準輸出。
-form | -f
剖析 QUERY_STRING 作為表單要求。傳回一字串(以 shell 來評估時), 這個字串會將 shell 變數設定成以 FORM_ 為字首,並在後面接著欄位名稱。欄位值即是變數的內容。
-value field-name | -v field-name
剖析 QUERY_STRING 作為表單要求。只傳回 field-name 值。
-read | -r
讀取標準輸入中的 CONTENT_LENGTH 字元,並將其寫入標準輸出中。
-init | -i
如果沒有設定 QUERY_STRING,讀取標準輸入的值,並傳回一個將 QUERY_STRING 設定為這個值的 SET 陳述式。 可與 GET 和 POST 二法並用。一般常見的用法如下:
eval 'cgiparse -init'

不論是使用 GET 或 POST 方法,這都會設定 QUERY_STRING 環境變數。

使用 GET 方法時,在相同的 Script 中可重複呼叫 cgiparse 多次, 但如果是使用 POST 方法,便只能呼叫它一次。使用 POST 方法,在讀取標準輸入之後, 當下一個 cgiparse 要讀取時會發現標準輸入已清空並無限期地等待。

-sep separator | -s separator
指定用於區隔多項值的字串。如果您使用 -value 旗號, 預設的分隔字元為新的一行。如果您使用 -form 旗號, 預設的分隔字元為逗點 (,)。
-prefix prefix | -p prefix
-POST-form 並用, 可指定建立環境變數名稱時所要使用的前置符號。其預設值為 "FORM_"。
-count | -c
-keywords-form-value 並用時, 會傳回與這些旗號有關的項目計數。
-keywords | -k
傳回關鍵字數目。
-form | -f
傳回唯一的欄位之數目(多重值視為一個值)。
-value field-name | -v field-name
傳回 field-name 值的數量(如果沒有名為 field-name 的欄位, 則輸出是 0)。
-number
同時與 -keywords-form-value 並用, 會傳回與這些旗號有關的特定事件。
-keywords
傳回第 n 個關鍵字。(例如 -2 -keywords 表示輸出第二個關鍵字。)
-form
傳回第 n 個欄位中所有的值。(例如 -2 -form 表示輸出第二個欄位中所有的值。)
-value field-name
傳回 field-name 欄位中第 n 個多重值。(例如 -2 -value -whatsit 表示輸出 whatsit 欄位的第二個值。)
-quiet | -q
不顯示所有錯誤訊息。(非零的結束狀態仍然表示錯誤。)
-POST | -P
從標準輸入來的資訊(或是如果檔名是預期的 stdin)直接被解碼並剖析為 shell 變數,並且未使用 QUERY_STRING。-POST 相當於 -init-form 選項的連續使用。

範例

下列範例忽略了 QUERY_STRING 已由伺服器設定的事實。在下列範例中,$ 是 Bourne shell 的提示符號。

結果

0
成功
1
不合法指令行
2
未正確設定環境變數
3
無法取得要求的資訊(例如,沒有這種欄位,或在要求表單欄位值時 QUERY_STRING 含有關鍵字)
註:
當您接收到其中一個錯誤碼時, 也會收到其他參考訊息。訊息視發出的指令而異。

cgiutils 指令

目的

您可以在不剖析標頭程式中,使用 cgiutils 指令來產生一個完整的 HTTP 1.0 回應。

註:
如果您想提供自己特定的不剖析標頭 (nph)程式, 以傳回您自己的回覆值,則程式的名稱必須以 nph- 開頭。 如此可避免伺服器標頭以標準伺服器回覆值置換您的回覆值。

語法

   cgiutils -Flag [Modifier]

如果 Modifier 包含空白,請以引號 ("") 將它括住。

參數

-version
傳回版本資訊。
-nodate
不傳回 Date: 標頭。
-noel
在標頭之後不傳回空白行。如果在起始的標頭行之後,您還要其他的 MIME 標頭,這個方法非常有用。
-status nnn
傳回完整的 HTTP 回應,及狀態碼 nnn,而不只有一組 HTTP 標頭。 如果您只要 Expires: 標頭,請勿使用本旗號。
-reason explanation
指定 HTTP 回應的原因行。只有當這個旗號與 -status nnn 旗號並用時,您才可使用它。
-ct [type/subtype]
指定 MIME 內容類型標頭。這個範例指定 text/html 的 MIME 內容類型:
      cgiutils -ct text/html

如果您省略 type/subtype,MIME 的內容類型便會設定為預設的 text/plain。 這個範例會將 MIME 的內容類型設定為 text/plain。

      cgiutils -ct
-ce encoding
指定 MIME 內容編碼標頭。例如:
      cgiutils -ce  x-compress
-cl language-code
指定 MIME 內容語言標頭。例如:
      cgiutils -cl en_UK
-length nnn
指定 MIME 內容長度標頭。
-expires Time-Spec
指定 MIME Expires: 標頭。本旗號以任何日期、時、分、秒的組合來指定存活時間(指文件的有效日期)。這是文件被視為有效的時間長度。例如:
      cgiutils -expires 2 days 12 hours

cgiutils 指令將您指定的時間新增至目前的「格林威治標準時間」, 以決定有效日期。到期日以 HTTP 格式放在 Expires: 標頭。

-expires now
產生 Expires: 標頭,它符合 Date: 標頭。
-uri URI
指定傳回文件的「統一資源識別碼」(URI)。URI 可視為與 URL 相同。
-extra xxx: yyy
指定無法為 cgiutils 指令另行指定的額外標頭。

範例

htadm 指令

目的

使用 htadm 指令來控制您的伺服器密碼檔案。 您的伺服器使用密碼檔案來控制對您檔案的存取權。 您可以新增或刪除密碼檔中的使用者名稱、驗證使用者的密碼,以及建立空的密碼檔。同時,也可以先刪除使用者的密碼,再建立新密碼,藉以變更該使用者的密碼。

註:
當您使用 htadm 來新增使用者、變更密碼或檢查密碼時,您必須在指令行上輸入該密碼。由於指令會儘快從指令行摧毀密碼,因此您不太可能從機器上的程序清單中看到使用者的密碼(例如:使用 ps 指令)。

語法

   htadm -Flag  [Modifier]

參數

-adduser password-file user-name [password [real-name]]
可新增使用者及密碼至密碼檔案中。如果您只以 password-file 輸入指令, 系統便會提示您再輸入其他參數。
password-file
要新增使用者之密碼檔案的路徑與名稱。
user-name
要新增的使用者名稱。

在使用者名稱上只允許使用英數字元;請勿使用特殊字元。

如果密碼檔案中已經有一個相同名稱的使用者,則該指令會失敗。

password
您要定義給使用者名稱的密碼。

密碼的長度可達 32 個字元。在密碼上只允許使用英數字元;請勿使用特殊字元。

註:
  1. 某些瀏覽器無法讀取及傳送大於 8 個字元的密碼。由於這種限制, 如果您定義一個大於 8 個字元的密碼,則伺服器會識別整個密碼,或只識別前 8 個字元為有效的密碼。
  2. 管理者使用者名稱和密碼會區分大小寫,即使作業系統不區分大小寫也是如此。 請務必輸入存取「配置與管理」表單時,利用 htadm 指令來輸入的使用者名稱和密碼。
real-name
識別您新增的使用者名稱所用的備註或名稱。您所輸入的所有文字皆會寫入密碼檔案中。
-deluser password-file [user-name]
可從密碼檔案中刪除使用者。如果您只以 password-file 輸入指令, 系統便會提示您再輸入 user-name 參數。
password-file
您要刪除使用者所在之密碼檔案的路徑及名稱。
user-name
要刪除的使用者名稱。如果所指定的使用者名稱不在密碼檔案中,則該指令會失敗。
-passwd password-file [user-name [password]]
變更已定義在密碼檔案中之使用者名稱的密碼。如果您只以 password-file 輸入指令, 系統便會提示您再輸入其他參數。
password-file
密碼檔案的路徑與名稱;該檔案中含有要變更之密碼所屬的使用者名稱。
user-name
要變更密碼的使用者名稱。如果所指定的使用者名稱不在密碼檔案中,則該指令會失敗。
password
您想為使用者名稱定義的新密碼。

密碼的長度可達 32 個字元。在密碼上只允許使用英數字元;請勿使用特殊字元。

註:
  1. 某些瀏覽器無法讀取及傳送大於 8 個字元的密碼。由於這種限制, 如果您定義一個大於 8 個字元的密碼,則伺服器會識別整個密碼,或只識別前 8 個字元為有效的密碼。
  2. 管理者使用者名稱和密碼會區分大小寫,即使作業系統不區分大小寫也是如此。 請務必輸入存取「配置與管理」表單時,利用 htadm 指令來輸入的使用者名稱和密碼。
-check password-file [user-name [password]]
驗證密碼檔案中已定義之使用者名稱的密碼,並讓您知道其正確與否。如果您只以 password-file 輸入指令, 系統便會提示您再輸入其他參數。
password-file
密碼檔案的路徑與名稱;該檔案中含有您要驗證之密碼所屬的使用者名稱。
user-name
要驗證之密碼所屬的使用者名稱。如果所指定的使用者名稱不在密碼檔案中,則該指令會失敗。
password
要驗證的密碼。如果您輸入的密碼即是為使用者名稱定義的密碼,則該指令會將 Correct 寫入標準輸出,並以回覆碼 0 來完成。如果您輸入的密碼不是為使用者名稱定義的密碼,則該指令會將 Incorrect 寫入標準輸出。
-create password-file
建立一個空的密碼檔案。
password-file
您想建立的密碼檔案之路徑與名稱。

範例

htcformat 指令

目的

請使用 htcformat 指令來準備原始裝置或檔案,以保留 Proxy 快取。 必須使用這個格式指令之後,才能指定與 Proxy 快取共用的裝置。

裝置路徑必須指定原始裝置。如果要取得有關存取原始裝置的詳細資訊,請參閱檔案系統說明文件。配置 Proxy 伺服器快取有提供一些範例。

註:
Linux 2.2 核心不支援到原始裝置的快取。 在 Linux 平台,只有檔案及記憶體能用來作為快取儲存體。

Caching Proxy 快取的最小大小是 16392 KB,等於 2049 個區塊。

語法

htcformat device [-blocksize <block size>] [-blocks number of blocks]
htcformat -file filepath [-blocksize block size] -blocks number of blocks

參數

-blocksize
這個旗號在快取裝置媒體中設定區塊大小。 區塊大小是以位元組為單位。預設值是 8192,應適用於所有狀況。
-blocks
在裝置上或在檔案中要建立的區塊數。檔案格式化時,需要這個引數以便指定檔案大小。 也可使用這個引數,限制要用於快取儲存體的特定裝置或分割區數量。 如果沒有指定區塊引數,就會在分割區建立最多區塊。
-file
將檔案而不是儲存裝置格式化。

使用

此外,快取系統還分離快取檔案或裝置,使其成為執行索引及記憶體回收的儲存器。 儲存器大小設為某個區塊數;儲存器大小無法配置。 要執行記憶體回收最少需要兩個儲存器;最小快取大小是 16392 KB。

htcformat 指令拒絕產生少於兩個儲存器的快取裝置之格式化要求。

範例

下例範例在 Solaris 上將名稱為 c0t0d0s0 的磁碟分割區格式化。

   htcformat /dev/rdsk/c0t0d0s0

以下範例會在 AIX 上格式化一個磁碟分割區,稱為 lv02。

   htcformat /dev/rlv02

以下範例會在 Windows 上格式化一個磁碟分割區,稱為 d:。

   htcformat \\.\d:

下例範例將名稱為 filecache 的檔案格式化成為大約 1 GB。

htcformat -file /opt/ibm/edge/cp/filecache -blocks 131072

ibmproxy 指令

目的

使用 ibmproxy 指令啟動伺服器。

您可以使用伺服器配置檔中的指引來設定所有旗號(除了 -r)。

建立 README 檔(含專供新手閱讀之指示或注意事項), 是很平常的作法。 依預設,ibmproxy 會將任何 README 檔內含在超文件版本的目錄當中。README 檔指示也可以用 DirReadme 配置指引加以設定。

語法

ibmproxy [-Flag [-Flag [-Flag..]]]

參數

-nobg
以前景處理程序而非背景處理程序來執行伺服器。 預設情況是當作背景處理程序來執行。
-nosnmp
關閉 SNMP 支援。
-p port-number
由這個埠號執行聽取作業。預設埠號是 80。這個旗號置換在配置檔中所指定的 Port 指引。 如果要使用預設值或在配置檔指定的值,請省略這個旗號。
-r configuration-file
指定用為配置檔的檔案。如果想使用預設配置檔以外的配置檔來啟動伺服器,您必須使用這個旗號。 這容許使用多個配置檔。
-restart
重新啟動目前執行中的伺服器。ibmproxy 指令取得正在從 PidFile 執行的伺服器的程序號碼,然後將程序號碼傳送給 HangUP 訊號 (HUP)。接著它會重新載入其配置檔, 並重新開啟其日誌檔。如果要避免毀壞,請不要在同一時間使用相同的 PidFile、日誌檔與 Proxy 快取來執行兩個伺服器實例。

因為 http 常駐程式必須要讀取伺服器正在使用的配置檔以存取 PidFile, 您必須在重新啟動時指定相同的配置檔。 如果您在啟動伺服器時使用 -r 旗號與特定的配置檔, 那麼您必須使用 -restart 來指定這個旗號及相同檔案。

-snmp
開啟 SNMP 支援。
-unload
在 AIX 上,這會卸載透通的 Proxy 核心副檔名。在 Linux 上,這將移除相關聯的防火牆規則。

信號處理選項也只存在於 Linux 和 UNIX 平台中。在 Linux 和 UNIX 平台中,可以使用下列選項。

SIGTERM
ibmproxy 指令會在完成時停止並結束。您可以使用 SIGKILL 或 CANCEL 立即終止。
SIGHUP
如果執行,ibmproxy 指令將重新啟動、重新載入配置檔並繼續處理。

範例

附錄B. 配置檔指引

主題說明內含於 ibmproxy.conf 配置檔中的指引。

如果要藉由編輯 ibmproxy.conf 檔來配置伺服器,請參考這個資訊。如果使用配置與管理表單,則不必參考本章。

按字母順序列出的指引。

重新啟動時不變更指引

有些指引在伺服器重新啟動時並不會重新整理。 如果下列指引是在伺服器執行時變更,您必須手動停止伺服器,再手動將它啟動。 (請參閱啟動與停止 Caching Proxy。)

表 6. 重新啟動時不重新整理指引
指引群組 指引
CGI DisinheritEnv、InheritEnv
Caching Caching
日誌記載 AccessLog、CacheAccessLog、ErrorLog、ProxyAccessLog、ServerRoot
網路存取 BindSpecific、Hostname、ListenBacklog、Port
效能 MaxActiveThreads
RTSP 所有的 RTSP 指引
SSL 所有的 SSL 指引
Linux 和 UNIX 程序控制 GroupId、UserId
雜項 TransparentProxy

指引概觀

本附錄提供有關每一個指引的下列資訊:

可接受的值

下列清單包含配置檔接受的值:

配置檔記錄的語法

當編輯配置檔時,請記得下列需求:

Caching Proxy 指引

Caching Proxy 指引如下。

AcceptAnything -- 提供所有檔案

使用這個指引對用戶端提供檔案,即使檔案的 MIME 類型不符合用戶端傳送的 ACCEPT: 標頭也可以。 如果這個指引設為 OFF,就不會顯示不被用戶端接受的 MIME 類型檔案。 而會顯示一個錯誤頁。

格式

AcceptAnything  {off | on}

範例

AcceptAnything off

預設值

AcceptAnything on 

AccessLog -- 為存取日誌檔的路徑命名

使用這個指引,指定伺服器記錄存取統計值所用的目錄與檔案。 依預設,每當用戶端對伺服器傳送要取得儲存在本端伺服器中的資料之要求時, 伺服器都會寫入一個項目到這個日誌。這些項目通常只包括來自配置用戶端的要求, 或當 Caching Proxy 機器作為來源伺服器使用時的存取。這個日誌不含 Proxy 或快取存取資訊。

使用 NoLog 指引來指定您不要記載其要求的用戶端。NoLog 指引的說明,請參閱NoLog -- 不顯示與範本相符的特定主機或網域的日誌項目

如果伺服器正在執行,那麼它會在每日午夜啟動新的日誌檔。 否則,伺服器會在任意日的第一次啟動時, 啟動一個新的日誌檔。在建立該檔時, 伺服器使用您所指定的檔名,再加上日期當作字尾。日期字尾的格式為 Mmmddyyyy, 其中 Mmm 是指月份的前三個字母; dd 是指月份的日期;而 yyyy 是指年份。

註:
如果您變更使用者 ID、群組 ID 或日誌目錄路徑的伺服器預設值, 請建立新目錄並更新目錄的許可權及擁有權。如果要啟動伺服器, 將資訊寫入使用者定義的日誌目錄中,請將該目錄的許可權設成 755, 並將使用者定義的伺服器使用者 ID 設成擁有人。比方說,如果您將伺服器的使用者 ID 從預設值改成 jdoe, 且將預設日誌目錄改成 server_root/account, 則 server_root/account 目錄必須具有許可權 755, 且為 jdoe 所有。

舊的日誌檔太佔硬碟空間了,最好將它們移除。

格式

AccessLog  /directory_path/logfile_name

範例

AccessLog  /logs/accesslog

預設值

AccessLogExcludeMethod -- 不顯示指定方法所要求的檔案或目錄之日誌項目

使用這個指引防止記載那些以特定方法存取檔案或目錄而提出的要求。 比方說,如果不想記載檔案或目錄的 DELETE 要求,就可以這麼做。

這個指引可以在配置檔中重複出現。您亦可將數種方法放在同一個指引上(如果用一或多個空格加以分隔)。

格式

AccessLogExcludeMethod method  [...]

範例

AccessLogExcludeMethod GET
AccessLogExcludeMethod PUT
AccessLogExcludeMethod POST
AccessLogExcludeMethod DELETE
AccessLogExcludeMethod GET   PUT

預設值

無。伺服器會在存取日誌中,併入所有類型的方法所要求的檔案及目錄。

AccessLogExcludeMimeType -- 不顯示特定 MIME 類型的 Proxy 存取日誌項目

使用這個指引,可指定不想記錄在 Proxy 存取日誌要求中對於某指定 MIME 類型的目錄或檔案所提出的存取要求。(MIME 類型的範例如 text/html、image/gif 以及 image/jpeg。)例如,也許您不想記錄對 GIF 影像所提出的存取要求。

這個指引可以在配置檔中重複出現。您可以將數種 MIME 類型放在同一個指引上(如果用一或多個空格加以分隔)。

註:
這個指引只會影響 Proxy 存取日誌。無法過濾依快取物件的 MIME 類型列出這些快取物件的日誌。您可以利用 AccessLogExcludeURL 來進行下列工作。

格式

AccessLogExcludeMimeType MIME_type  [...]

範例

AccessLogExcludeMimeType image/gif
AccessLogExcludeMimeType text/html
AccessLogExcludeMimeType image/gif   text/html

預設值

無。存取日誌包含所有 MIME 類型的檔案與目錄之伺服器要求。

AccessLogExcludeReturnCode -- 不顯示特定回覆碼的日誌項目

使用這個指引,可以指定不想記錄落在錯誤碼編號之指定範圍內的存取要求。這些錯誤碼為 Proxy 伺服器狀態碼。您無法指定個別字碼。如果指定 300, 代表您想排除具有重新導向回覆碼(301、302、303 和 304)的存取要求。

這個指引可以在配置檔中重複出現。您可以將多重回覆碼放在同一個指引上(如果用空格加以區隔)。

格式

AccessLogExcludeReturnCode range

範例

AccessLogExcludeReturnCode 300

預設值

無。存取日誌包含所有伺服器的要求,而不管什麼碼。

AccessLogExcludeURL -- 不顯示特定檔案或目錄的日誌項目

您可以使用這個指引, 指定不要記錄對符合指定 URL 範本的特定檔案或目錄所提出的存取要求。比方說,不想記錄 GIF 檔的存取要求, 或者可能不想記錄伺服器上某些檔案或目錄的存取要求時, 就可以這麼做。

這個指引可以在配置檔中重複出現。您也可以將數個項目放在同一個指引上(如果用一或多個空格加以分隔)。

格式

AccessLogExcludeURL  file_or_type [...]

範例

AccessLogExcludeURL *.gif
AccessLogExcludeURL  /Freebies/*
AccessLogExcludeURL  *.gif   /Freebies/*

預設值

無。伺服器會記載存取所有檔案及目錄的要求。

AccessLogExcludeUserAgent -- 不顯示特定瀏覽器的日誌項目

請利用這個指引來指定您不要記載特定使用者代理程式(如 Internet Explorer 5.0)所發出的存取要求。

這個指引可以在配置檔中重複出現。您也可以將數個項目放在同一個指引上(如果用一或多個空格加以分隔)。

格式

AccessLogExcludeUserAgent user_agent [...]

範例

AccessLogExcludeUserAgent  *Mozilla/2.0
AccessLogExcludeUserAgent  *MSIE 5*

預設值

依預設,ibmproxy.conf 檔包含 AccessLogExcludeUserAgent 指引的下列定義:

AccessLogExcludeUserAgent IBM_Network_Dispatcher_HTTP_Advisor
AccessLogExcludeUserAgent IBM_Network_Dispatcher_WTE_Advisor

以上列出的使用者代理程式,是定義給通常位於 Caching Proxy 伺服器之前的某些 Load Balancer 警告器的使用者代理程式。為了使寫入日誌的數量降至最低以提昇效能,系統不會記載這些使用者代理程式。依預設,伺服器日誌會記載所有其他使用者代理程式所提出的存取要求。

AddBlankIcon -- 指定用來對齊目錄清單中標頭的圖示 URL

您可以使用這個指引來指定一個圖示, 幫您對齊位於目錄清單(伺服器做為 Proxy 以服務 FTP 要求時傳回的清單)中的標頭。 圖示出現在相關檔案的旁邊,幫助您辨別這些檔案。

圖示可以是空白圖示,也可以是您希望出現在目錄清單標頭上的圖示。為了對齊正確, 您所用的圖示,必須與您在目錄清單中所用的其他圖示大小相同。

格式

AddBlankIcon icon_URL   alternative_text
icon_URL

指定圖示 URL 的最後部分。 伺服器會將這個值新增至 /icons/ 目錄,以形成完整的 URL 要求。如果是要求一個本端檔案,則伺服器會經由對映指引來轉換該要求。為了擷取圖示, 對映指引必須讓要求通過。

如果您將伺服器當作 Proxy 伺服器來使用, 則完整的要求必須是一個指向您伺服器的完整 URL。

alternative_text
在要求的瀏覽器未顯示圖形的情況下,指定代替圖示所用的文字。

範例

AddBlankIcon logo.gif  logo

預設值

因為圖示是空白的,因此預設值不會指定替代文字。

AddDirIcon -- 指定目錄清單上目錄的圖示 URL

使用這個指引來指定一個圖示,以代表目錄清單中的一個目錄。

格式

AddDirIcon   icon_URL   alternatIve_text
icon_URL

指定圖示 URL 的最後部分。 伺服器會將這個值新增至 /icons/ 目錄,以形成完整的 URL 要求。如果是要求一個本端檔案,則伺服器會經由對映指引來轉換該要求。為了擷取圖示, 對映指引必須讓要求通過。

如果您將伺服器當作 Proxy 伺服器來使用, 則完整的要求必須是一個指向您伺服器的完整 URL。您必須將 URL 對映到本端檔案,並確保對映指引讓 URL 通過。

alternative_text
在要求的瀏覽器未顯示圖形的情況下,指定代替圖示所用的文字。

範例

AddDirIcon  direct.gif  DIR

預設值

AddEncoding -- 指定具有特定字尾的檔案進行 MIME 內容編碼

您可以使用這個指引,將具有特定字尾的檔案,連結到 MIME 編碼類型。 這個指引很少用。

格式

AddEncoding .extension  encoding
.extension
指定檔案字尾型樣。
encoding
指定您要連結到符合對應字尾型樣之檔案的 MIME 編碼類型。

範例

AddEncoding .qp   quoted_printable

預設值

AddEncoding .Z  x-compress

AddIcon -- 連結圖示至 MIME 內容類型或編碼類型

使用這個指引來指定圖示, 以代表含有特定 MIME 內容類型或編碼類型的檔案。 伺服器會在目錄清單上使用圖示,包括 FTP 目錄清單。

格式

AddIcon icon_URL  alternative_text  MIME_type_template
icon_URL

指定圖示 URL 的最後部分。 伺服器會將這個值新增至 /icons/ 目錄,以形成完整的 URL 要求。如果是要求一個本端檔案,則伺服器會經由對映指引來轉換該要求。為了擷取圖示, 對映指引必須讓要求通過。

如果您將伺服器當作 Proxy 伺服器來使用, 則完整的要求必須是一個指向您伺服器的完整 URL。您必須將 URL 對映到本端檔案,並確保對映指引讓 URL 通過。

alternative_text
在要求的瀏覽器未顯示圖形的情況下,指定代替圖示所用的文字。
type_template
指定 MIME 內容類型或編碼類型的範本。 內容類型的範本通常含有斜線 (/)。而編碼類型的範本從未有斜線。

範例

AddIcon   video_file.m.pm.gif    MOV    video/*

預設值

在 ibmproxy.conf 配置檔中對 AddIcon 指引設定許多個預設值。

AddParentIcon -- 指定代表目錄清單上層目錄的圖示 URL

使用這個指引來指定一個圖示,以代表目錄清單中的上層目錄。

格式

AddParentIcon   icon_URL   alternative_text
icon-URL

指定圖示 URL 的最後部分。 伺服器會將這個值新增至 /icons/ 目錄,以形成完整的 URL 要求。如果是要求一個本端檔案,則伺服器會經由對映指引來轉換該要求。為了擷取圖示, 對映指引必須讓要求通過。

如果您將伺服器當作 Proxy 伺服器來使用, 則完整的要求必須是一個指向您伺服器的完整 URL。您必須將 URL 對映到本端檔案,並確保對映指引讓 URL 通過。

alternative_text
在要求的瀏覽器未顯示圖形的情況下,指定代替圖示所用的文字。

範例

AddParentIcon  parent.gif  UP

預設值

AddParentIcon   dir-up.gif    UP

AddType -- 指定具有特定字尾的檔案的資料類型

您可以使用這個指引,將具有特殊字尾的檔案與 MIME 類型或子類型加以連結。這個指引可以在配置檔中重複出現。伺服器可以提供最常用的預設字尾。

格式

AddType .extension type/subtype encoding [quality[ character_set]]
.extension
檔案字尾型樣。 只有在下列兩種特殊的字尾型樣中,才能使用萬用字元 (*):
*.*
符合含有一個句點字元 (.) 的檔名,且不符合其他規則。
*
符合不含有一個句點字元 (.) 的檔名,且不符合其他規則。
type/subtype
您要連結到符合對應字尾型樣之檔案的 MIME 類型及子類型。
encoding
是指資料已轉換成的 MIME 內容編碼格式。編碼同時也被 FTP Proxy 伺服器用來判斷檔案是否要用二進位模式加以擷取。 通常適當的編碼是 7bit8bitbinary,判斷的方式如下:
7bit
資料皆呈現為短行(少於 1000 個字元)的 8859-1 ASCII 資料。 原始碼或純文字檔通常屬於這一類。 不過那些含有繪圖線條字元或重音字元的檔案則除外。
8bit
資料以短行來呈現,但可能包含高位元組的字元 (例如,繪圖線條字元或重音字元)。PostScript 檔與來自歐洲網站的文字檔,通常屬於這個種類。
binary
這個編碼可以用在所有的資料類型上。資料可能不只含有非 ASCII 字元,而且還有超過 1000 個字元的長行。幾乎每個 image/*audio/*video/* 類型的檔案都屬於這個種類,其中也包括 application/* 類型的二進位資料檔在內。

其他的編碼值會收到與二進位相同的處置, 且在 MIME 標頭中以內容編碼 MIME 標頭的方式傳遞。7bit8bit 的規格不會在 MIME 標頭中傳送。

quality
指定內容類型的相對值(比例尺 0.0 至 1.0)選用性指示器。如果一個檔案的多重呈現皆符合一個要求, 則使用品質值。伺服器選取與最高品質值相關的檔案。 比方說,如果要求 internet.ps 這個檔案, 且伺服器有下列 AddType 指引設定時,伺服器便會使用 application/postscript 行,因為它的品質號碼較高。
AddType  .ps application/postscript  8bit  1.0
AddType  *.* application/binary   binary 0.3
character_set
您想要結合文字檔案與字集之選用性指示器。對於您指定字集的檔案, 伺服器會告訴用戶端瀏覽器在顯示該檔案時要使用何種字集。 如果您要設定 character_set 欄位值,同時必須在 quality 欄位中包含一個值。

範例

AddType .bin  application/octet-stream binary  0.8

預設值

AddType 指引的數個預設設定內含於配置檔中 (ibmproxy.conf)。

AddUnknownIcon -- 指定目錄清單上不明檔案類型的圖示 URL

使用這個指引來指定一個圖示, 代表目錄清單中具有不明檔案類型的檔案。

格式

AddUnknownIcon   icon_URL   alternative_text
icon_URL

指定圖示 URL 的最後部分。 伺服器會將這個值新增至 /icons/ 中,以形成完整的 URL 要求。如果是要求一個本端檔案,則伺服器會經由對映指引來轉換該要求。為了擷取圖示, 對映指引必須讓要求通過。

如果您將伺服器當作 Proxy 伺服器來使用, 則完整的要求必須是一個指向您伺服器的完整 URL。您必須將 URL 對映到本端檔案,並確保對映指引讓 URL 通過。

alternative_text
在要求的瀏覽器未顯示圖形的情況下,指定代替圖示所用的文字。

範例

AddUnknownIcon saywhat.gif  unknown

預設值

AdminPort -- 指定要求管理頁面或表單的埠

使用這個指引,指定管理者可用來存取伺服器狀態頁或配置表單的連接埠。這個連接埠的要求不會隨著所有其他進入的要求(在以 Port 指引定義的標準連接埠上)置於佇列。不過,AdminPort 上的要求將通過如同 Pass、Exec、Protect 等相同的正常存取控制及要求對應規則。

註:
管理連接埠不能等同於以 Port 指引定義的標準連接埠。

格式

AdminPort port_number

範例

AdminPort 2001

預設值

AggressiveCaching -- 為不能快取的檔案指定快取作業

使用這個指引來指定是否仍要快取由來源伺服器傳回且標示成無法快取的檔案。 根據這個指引而快取的不可快取檔案會標示成 must revalidate。 每次要求這個檔案時,Proxy 伺服器會傳送 If-Modified-Since 要求給來源伺服器來重新驗證回應,然後快取記憶體才提供回應。 目前看來, 這個指引影響所及的無法快取檔案, 只有來自來源伺服器(含 cache-control: no-cache 標頭)所傳來的回應。您可以多次指定這個指引。

格式

AggressiveCaching url_pattern 

範例

AggressiveCaching http://www.hosta.com/*
AggressiveCaching http://www.hostb.com/*

為了舊版相容性,現在是以下列方式來處理這個指引先前的語法 (AggressiveCaching {on | off}):

註:
如果指定 AggressiveCaching offAggressiveCachingurl_pattern, 就會忽略 AggressiveCaching off,並顯示一則警告訊息。

預設值

AlwaysWelcome -- 指定是否在所要求的目錄中搜尋歡迎使用檔案

如果只含有目錄名稱而沒有檔案名稱的要求, 則 AlwaysWelcome 指引會控制伺服器是否要在目錄中尋找要傳回的歡迎使用檔案。依預設,AlwaysWelcome 會被設成 on 值。 這表示伺服器通常會在所要求的目錄中, 尋找檔案(符合在 Welcome 指引中所指定的名稱)。如果找到相符的檔案,則將它傳回要求者。 如果伺服器在目錄中的檔案與 Welcome 指引檔名之間找到數個相符的檔案, 則 Welcome 指引的順序會決定哪個檔案已傳回。伺服器會使用最靠近配置檔頂端的 Welcome 指引。

格式

AlwaysWelcome  on | off

預設值

AlwaysWelcome  on

相關指引

appendCRLFtoPost -- 將 CRLF 附加到 POST 要求

使用這個指引來指定 URL,Caching Proxy 會針對這些 URL 將換行字元及跳行字元附加到 POST 要求的本文 (body) 之結尾處。您可以多次指定這個指引。

註:
請只對已知在處理 POST 要求時會發生問題的 URL 指定這個指引。

格式

appendCRLFtoPost  url_pattern

範例

appendCRLFtoPost http://www.hosta.com/

預設值

ArrayName -- 為遠端快取陣列命名

使用這個指引來指定伺服器所要共用的遠端快取陣列。

註:
當設定陣列時,請在該陣列的所有成員上以相同方式配置 Hostname 指引。

格式

ArrayName array_name

預設值

Authentication -- 自訂「鑑別」步驟

這個指引可以指定您希望伺服器執行要求處理的「鑑別」步驟期間,呼叫的自訂應用程式函數。根據鑑別架構執行這個程式碼。只支援 BASIC 鑑別。

註:
鑑別是授權程序的一部分;它只有在需要授權時才會發生。

格式

Authentication type /path/file:function_name
type
指定一個鑑別架構,以進一步決定是否已呼叫您的應用程式函數。 星號 (*) 和 BASIC 都是可以接受的值。
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定您在程式中給予應用程式函數的名稱。

範例

Authentication BASIC /ics/api/bin/icsextpgm.so:basic_authentication

預設值

Authorization -- 自訂「授權」步驟

這個指引可以指定伺服器執行要求處理的「授權」步驟時,應呼叫的自訂應用程式函數。這個程式碼將驗證要求的物件是否可提供給用戶端。

格式

Authorization request_template /path/file:function_name
request_template
指定能進一步決定是否已呼叫您的應用程式函數之要求範本。在這個規格當中,可以包含通訊協定、網域及主機; 可以在前面加上斜線 (/),也可以用星號 (*) 當作萬用字元。比方說,/front_page.htmlhttp://www.ics.raleigh.ibm.com/pub*/** 都有效。 當利用 Caching Proxy 作為反向 Proxy 時,要求範本的開頭必須是文件根目錄 (/)。
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定您在程式中給予應用程式函數的名稱。

範例

Authorization /index.html /api/bin/icsextpgm.so:auth_url

預設值

AutoCacheRefresh -- 指定是否使用快取重新整理

您可以使用這個指引,來開啟或關閉快取重新整理功能。如果開啟重新整理,就會自動重新整理快取記憶體內容。如果關閉重新整理,就不會呼叫快取代理程式而且會忽略它的所有設定。 如果您要用另一種方法來啟動快取代理程式(如在 Linux 和 UNIX 系統中使用 cron 工作),請將這個指引設為 off

格式

AutoCacheRefresh {on | off}

預設值

AutoCacheRefresh On

BindSpecific -- 指定伺服器是連結到其中一個或是所有的 IP 位址

您可以在 multihomed 系統上使用這個指引,指定伺服器是否在單一網路位址上接收。 如果將值設為 On,伺服器會連結到 Hostname 指引中所指定的 IP 位址,而不會連結到所有本端 IP 位址。

如果沒有指定這個指引,伺服器便會連結到預設的 Hostname。

如果您更改了這個指引,則必須手動停止伺服器後再重新啟動。 如果只是重新啟動伺服器的話,伺服器將不會變更。 (請參閱啟動與停止 Caching Proxy。)

格式

BindSpecific {on | off}  [OutgoingSrcIp ip_addr | host_name]
[OutgoingSrcIp ip_addr | host_name]
當建立送出的連線時,OutgoingSrcIp 選項可讓 Caching Proxy 使用特定來源 IP 位址。它對 DMZ 中的 Caching Proxy 設定有用,當特殊防火牆規則有這個需要時,它也有用。

預設值

BindSpecific Off

BlockSize -- 指定快取中的區塊大小

這個指引指定快取裝置媒體中的區塊大小(以位元組為單位)。 預設值是 8192。因為只支援這個大小,請勿變更這個值。如果需要詳細資訊,請參閱htcformat 指令的參考章節。

格式

BlockSize size

預設值

依預設,配置檔中的 BlockSize 沒有設定。 (預設值是 8192。)

CacheAccessLog -- 指定快取存取日誌檔的路徑

使用這個指引來指定要伺服器儲存存取 Proxy 快取的日誌的路徑及檔案名稱。僅在伺服器當作 Proxy 執行時,這個指引才有效。請參閱CacheRefreshTime -- 指定何時要啟動快取代理程式,以取得進一步資訊。

如果要能夠在 Proxy 快取中記載要求,那麼 Caching 指引必須設成 ON, 而且必須為 CacheMemory 和 CacheAccessLog 指引設定值。 選擇性地,使用 CacheDev 指引可以定義一個或多個快取裝置。

CacheAccessLog 的值可以是一個絕對路徑,也可以是 ServerRoot 的相對路徑。 (兩者各有一個範例。)

格式

CacheAccessLog  path/file

範例

CacheAccessLog  /absolute/path/logfile
CacheAccessLog  /logs/logfile

預設值

CacheAlgorithm -- 指定快取演算法

使用這個指引來指定伺服器記憶體回收期間所要使用的快取演算法。

格式

CacheAlgorithm  {bandwidth | responsetime | blend} 
bandwidth
嘗試最節省網路頻寬。
responsetime
將使用者回應時間減至最低。
blend
使用 bandwidthresponsetime 兩者的均衡組合。

預設值

CacheAlgorithm bandwidth

CacheByIncomingUrl -- 指定用來產生快取檔名的基礎

您可以使用這個指引,來指定快取檔案名稱是否根據要求的送入 URL。

如果這個指引設為 on,表示快取檔案名稱是根據送入的 URL 而產生。如果指引設為 off, 則表示送入的 URL 會先經由所有可用的名稱轉換外掛程式、MAP 規則及 PROXY 規則而傳送,而快取檔案名稱是根據出現的 URL 而產生。

註:
當在 URL 型快取過濾器的反向 Proxy 實務中定義快取過濾器時,請使用開頭是文件根目錄 /(正斜線)的格式。比方說:/test/index.html。 格式應包括通訊協定,比方說,http://

格式

CacheByIncomingUrl {on | off}

預設值

CacheByIncomingURL off

CacheClean -- 指定保留快取檔案的時間長度

您可以使用這個指引,指定您想要伺服器保存快取檔案多久時間。在執行記憶體回收時,不管檔案的到期日為何,伺服器都會刪除超出這個時間的快取檔案。在任何時間,快取中已經超過指定時間的檔案都會被要求,伺服器在服務檔案之前會再確認檔案來確定檔案有效。

格式

CacheClean  time_specification

範例

CacheClean 2 weeks

預設值

CacheClean 1 month

CacheDefaultExpiry -- 指定檔案的預設有效時間

您可以使用這個指引,針對伺服器未提供 ExpiresLast-Modified 標頭的檔案,設定預設的有效時間。您可以為具有符合範本之 URL 的檔案,指定 URL 範本及有效時間。配置檔中可含多個該指引。為每個範本包含一個個別的指引。URL 範本必須包含通訊協定在內。請以月數、週數、天數及時數的組合,來指定這個時間值。

格式

CacheDefaultExpiry URL_template expiration_time

預設值

CacheDefaultExpiry ftp:*  1 day
CacheDefaultExpiry gopher:*  2 days
CacheDefaultExpiry http:*  0 days
註:
HTTP 通訊協定的預設有效時間是 0 days。建議保留這個值,因為許多 Script 程式沒有提供到期日,但它們的輸出卻立即到期。 不是 0 的值會使用戶端看到過時的內容。

CacheDev -- 指定快取的儲存裝置

使用這個指引來指定快取儲存裝置。可以指定檔案或原始磁碟分割區。 在 AIX 平台,可以指定原始邏輯容體。(如果沒有使用記憶體快取,原始磁碟快取會產生最佳效能。)

請注意:必須備妥快取裝置之後才能指定它們。如果要準備快取裝置,請使用 htcformat 指令將該裝置格式化。如果需要詳細資訊,請參閱htcformat 指令

必須指定多個快取裝置。每一個裝置會與相同的 CacheMemory 和 BlockSize 值相關聯。不過,每一個快取裝置會額外佔用 Proxy 伺服器機器大約 8 MB 記憶體。 使用較少大型裝置比使用較多小型裝置更有效率。為了產生最佳效率,請使用整個磁碟作為一個大型分割區(磁碟上沒有任何資料)。最佳化磁碟快取效能有提供關於快取儲存體的其他資訊。

格式

CacheDev  {raw_disk_partition | file}

範例

AIX: CacheDev /dev/rlv02

HP-UX: CacheDev /dev/rdsk/c1t15d0

Linux: CacheDev /opt/IBMWTE/filecache1

Solaris: CacheDev /dev/rdsk/clt3d0s0

Windows: CacheDev \\.\E:

預設值

CacheExpiryCheck -- 指定伺服器是否傳回過期的檔案

您可以使用這個指引,指定伺服器是否傳回過期的快取檔案。 如果您希望伺服器能傳回過期的檔案,請將值設為 off。如果您希望當用戶端要求過期檔案時,Proxy 檢查來源伺服器中是否有更新的檔案, 這時候請採用預設值 on。管理者除了正在示範伺服器,而且不在乎傳回的內容, 否則通常不會希望伺服器傳回過期的檔案。

格式

CacheExpiryCheck {on | off}

預設值

CacheExpiryCheck On

CacheFileSizeLimit -- 指定要快取的最大檔案大小

您可以使用這個指引,指定要快取的檔案大小上限。超過這個大小的檔案就不會進行快取。可將值指定成千位元組 (B)、千位元組 (K)、百萬位元組 (M) 或十億位元組 (G)。在數目與單位(B、K、M、G)之間是否有空格都沒關係。

格式

CacheFileSizeLimit maximum {B | K | M | G}

預設值

CacheFileSizeLimit 4000 K

CacheLastModifiedFactor -- 指定決定到期日的值

您可以使用這個指引, 指定用來計算特定 URL 或所有符合範本之 URL 的到期日的值。

HTTP 伺服器經常提供檔案的上次修改時間但不提供到期日。同樣地,FTP 檔案也可能有上次修改的時間戳記, 但卻沒有到期日。Caching Proxy 根據上次修改時間計算這些檔案的有效日期。它是使用上次修改時間,來判斷檔案修改後的時間長度, 然後將這個時間值乘以 CacheLastModifiedFactor 指引上的值。 這個計算的結果就是檔案的使用期限, 或是檔案還剩下的有效時間。

也可以指定 off -1 來關閉指引,不計算到期日。Proxy 伺服器是以 CacheLastModifiedFactor 指引出現在配置檔的順序加以讀取。它會採用第一個可引用在快取檔案的指引。

格式

CacheLastModifiedFactor url factor
url
指定完整的 URL,包括快取檔案的通訊協定在內。 您可以在 URL 範本內使用星號 (*) 當作萬用字元,來引用遮罩。
factor
指定在計算時所用的因子。也可以指定值 off-1

範例

CacheLastModifiedFactor  *://hosta/*    off
CacheLastModifiedFactor  ftp://hostb/*  0.30
CacheLastModifiedFactor  ftp://*        0.25
CacheLastModifiedFactor  http://*       0.10
CacheLastModifiedFactor  *              0.50

預設值

CacheLastModifiedFactor http://*/ 0.10
CacheLastModifiedFactor http://*.htm* 0.20
CacheLastModifiedFactor http://*.gif 1.00
CacheLastModifiedFactor http://*.jpg 1.00
CacheLastModifiedFactor http://*.jpeg 1.00
CacheLastModifiedFactor http://*.png 1.00
CacheLastModifiedFactor http://*.tar 1.00
CacheLastModifiedFactor http://*.zip 1.00
CacheLastModifiedFactor http:* 0.15
CacheLastModifiedFactor ftp:*  0.50
CacheLastModifiedFactor     *  0.10

預設值 0.14 使一個星期前修改的檔案在一天之內到期。

CacheLocalDomain -- 指定是否要快取本端網域

使用這個指引來指定是否要從與 Proxy 相同的網域內的主機快取 URL。 通常不需要快取內部網路上的區域網站,因為內部頻寬足夠快速載入 URL。 而不快取區域網站,就可以省下快取空間, 來進行較費時的 URL 擷取作業。

格式

CacheLocalDomain {on | off}

預設值

CacheLocalDomain on

CacheMatchLanguage -- 指定傳回的快取內容之語言喜好設定

如果後端伺服器有能力將相同 URL 的語言變式傳回給客戶,請利用這個指引來支援快取相同 URL 的不同語言。這個指引可讓 Caching Proxy 以快取回應的語言來驗證要求中的語言喜好設定。

當啟用 CacheMatchLanguage 時,在 Caching Proxy 載入快取內容之前,它會比較要求的 Accept-Language 標頭中的語言喜好設定和快取內容的語言。Caching Proxy 也會比較喜好設定距離。 如果喜好設定距離小於指定的限制,它會傳回快取複本;否則,Proxy 會將要求轉遞給後端伺服器,以取得所要求之語言的全新複本。

格式

CacheMatchLanguage {on | off}  lang-prefer-distance-limit special-id-for-all-lang
lang-prefer-distance-limit
指定在 0.001- 0.9999 範圍內的值。
special-id-for-all-lang
在 Content-Language 標頭中指定伺服器傳回的語言字串來通知 Proxy 回應可用於所有語言喜好設定。

範例

以下是指引、快取物件和要求的配置範例。

CacheMatchLanguage On 0.2

如果快取物件是簡體中文 (zh_cn),要求是:

GET / HTTP/1.1 
... 
Accept-Language: en_US;q=1.0, zh_cn;q=0.7, ja;q=0.3 
.... 

對於這個要求,客戶先要求一個英文頁面(字碼和品質是 en_US/1.0),之後是簡體中文(字碼和品質是 zh_cn/0.7),再之後是日文(字碼和品質是 ja/0.3)。 快取的物件是簡體中文。 最佳預期品質和相符語言品質的喜好設定距離是 1.0 - 0.7 = 0.3。 由於 CacheMatchLanguage 指引將限制設為 0.2,且 0.3 大於限制,因此,Proxy 會要求伺服器提供這個 URL 的新複本,而不會傳回快取的物件。

如果伺服器在傳回回應時,沒有指定語言或沒有在 Content-Language 標頭中指定 special-id-for-all-lang,因此,當下一項要求進入時,Proxy 不符合語言喜好設定,會傳回快取的複本。

預設值

CacheMatchLanguage off

CacheMaxExpiry -- 指定快取檔案的最長使用期限

您可以使用這個指引,來定義檔案可以留在快取中的最長時間長度。 快取檔案的使用期限即定義該檔案可以從快取中服務的時間長度,不檢查原始物件的時間長度是否已更新。 在某些情況下,計算後的快取檔案的使用期限可能長於您想要保存檔案的時間長度。 檔案的使用期限(由原始物件指定或以 Caching Proxy 來計算),不可大於 CacheMaxExpiry 指引所指定的限制。

在配置檔中允許這個指引出現多次。為每個範本包含一個個別的指引。

格式

CacheMaxExpiry URL lifetime
URL
指定完整的 URL,包括快取檔案的通訊協定在內。 您可以在 URL 範本內使用星號 (*) 當作萬用字元,來引用遮罩。
lifetime
指定符合 URL 範本的快取檔案的最長使用期限。可用月數、週數、天數、時數、分鐘數或秒數的組合,來指定這個時間值。

範例

CacheMaxExpiry ftp:* 1 month
CacheMaxExpiry http://www.santaclaus.np/* 2 days 12 hours

預設值

CacheMaxExpiry 1 month

CacheMemory -- 指定快取 RAM

使用這個指引來指定要與快取相關連的記憶體數量。 在磁碟快取的最佳效能方面,建議對快取基礎架構支援使用(包含快取索引)的快取記憶體最小值為 64 MB。隨著快取記憶體大小的增加,快取索引也會跟著增加,而且需要更多的快取記憶體來儲存索引。64 MB 的快取記憶體值是足夠提供快取基礎架構支援,以及儲存大概 6.4 GB 磁碟快取的快取索引。如果需要更大的磁碟快取,則快取記憶體必須要有快取大小的 1% 大小。

如果使用記憶體快取,那麼請將這個指引設為包含快取和快取索引需要的記憶體數量。

這個指引的最大建議值是 1600 MB。 這項限制是因為 Caching Proxy(作為 32 位元應用程式)可以使用最多 2 GB 記憶體而決定的。 如果快取需要的記憶體數量加上常式處理程序所使用的記憶體數量接近或超過 2 GB,Caching Proxy 就不會正常地運作。

可以使用下列單位指定數量:位元組 (B)、千位元組 (K)、百萬位元組 (M) 及十億位元組 (G)。

格式

CacheMemory amount {B | K | M | G}

預設值

CacheMemory 64 M

CacheMinHold -- 指定檔案可以使用的時間長度

使用這個指引來指定要置換有效時間的檔案的 URL。 部分網站設定檔案在它們的使用期限結束之前就到期, 因此需要伺服器更頻繁地要求這個檔案。CacheMinHold 指引使到期的檔案被保留在快取記憶體中,直到指定的時間量到了之後才重新要求該檔案。 您可以多次指定這個指引。

註:
如果置換到期日, 快取中的檔案也可能會作廢或過時。

範例

CacheMinHold http://www.cachebusters.com/* 1 hour

預設值

CacheNoConnect -- 指定單機式快取模式

您可以使用這個指引,指定 Proxy 伺服器是否擷取遠端伺服器的檔案。 預設值 (off) 可使得伺服器擷取遠端伺服器的檔案。 值 on 會將伺服器設為單機式快取的執行模式。如此表示伺服器只能傳回已儲存在快取中的檔案。 一般而言,當伺服器以這種模式執行時,您也會將 CacheExpiryCheck 指引設定成 off

如果您是為示範而使用伺服器,則以單機式快取模式執行伺服器是非常有用的。如果您知道示範使用的所有檔案皆儲存在快取中,則您不需要網路連線。

格式

CacheNoConnect  {on | off}

預設值

CacheNoConnect off

CacheOnly -- 只快取具有符合範本的 URL 的檔案

您可以使用這個指引,指定只有具備符合指定範本之 URL 的檔案, 才加以快取。這個指引可以在配置檔中重複使用。為每個範本包含一個個別的指引。URL 範本必須包含通訊協定在內。如果沒有設定這個指引的值,就可以快取不符合 NoCaching 指引的 URL。 如果配置檔沒有包含 CacheOnly 和 NoCaching 指引,就可以快取任何 URL。

格式

CacheOnly  url_pattern

範例

CacheOnly http://realstuff/*

預設值

CacheQueries -- 指定快取含有問號 (?) 的 URL 的回應

您可以使用這個指引,指定查詢要求的哪些 URL 回應應該加以快取。 如果使用 PUBLIC url_pattern 值, 就會快取在 URL 中含有問號的 GET 要求之回應(如果來源伺服器包含 cache-control: public 標頭而且回應不是可快取的回應)。 如果指定 ALWAYS url_pattern 值, 就會快取在 URL 中含有問號的 GET 要求之回應(如果回應不是可快取的回應)。

您可以多次指定這個指引。

CacheQueries {ALWAYS | PUBLIC} url_pattern

範例

CacheQueries ALWAYS http://www.hosta.com/*
CacheQueries PUBLIC http://www.hostb.com/* 
註:
為提供舊版相容性,先前語法 CacheQueries {ALWAYS | PUBLIC | NEVER} 以下列的方式處理:

預設值

CacheRefreshInterval -- 指定重新驗證快取物件的時間間隔

使用這個指引來指定何時向來源伺服器查詢,來判斷是否有變更快取檔案。

雖然 CacheClean 指引似乎與這個指引類似,但有一個差異。僅在使用文件之前, CacheRefreshInterval 才會指定 Proxy 重新驗證檔案,然而 CacheClean 在指定的時間後, 將使得檔案從快取中被移除。

格式

範例

CacheRefreshInterval *.gif 8 hours
CacheRefreshInterval 1 week

預設值

CacheRefreshInterval 2 weeks

CacheRefreshTime -- 指定何時要啟動快取代理程式

您可以使用這個指引,指定何時要啟動快取代理程式。您可以在指定的時間啟動快取代理程式。

格式

CacheRefreshTime HH:MM

預設值

CacheRefreshTime 03:00

CacheTimeMargin -- 指定要快取的檔案使用期限下限

CacheTimeMargin 指引會指定文件的使用期限下限,好讓它快取。

Caching Proxy 計算每一個檔案的有效時間。如果在檔案到期之前不太可能收到檔案的另一個要求,Caching Proxy 就會認為該檔案的使用期限太短而無法快取檔案。 依預設,Caching Proxy 不會快取使用期限小於 10 分鐘的檔案。如果快取還有很多沒有用到,那麼讓指引保留起始值就可以了。如果填入快取記憶體的資料接近容量,請考慮增加最小使用期限的值。

格式

CacheTimeMargin minimum_lifetime

預設值

CacheTimeMargin 10 minutes
註:
如果您將指引設定超過 4 小時的話,將大幅降低快取效率。

CacheUnused -- 指定保留未使用之快取檔案的時間長度

對於 URL 符合指定範本的未使用的快取檔案, 您可以使用這個指引來設定伺服器保留這些檔案的最大時限。對於 URL 符合範本的未用檔案,在快取一段指定時間之後, 不論其到期日為何,伺服器都會刪除這些未使用的檔案。這個指引可以在配置檔中重複使用。為每個範本包含一個個別的指引。URL 範本必須包含通訊協定在內。請以月數、週數、天數及時數的組合,來指定這個時間值。

格式

CacheUnused url_template time_length

範例

CacheUnused ftp:* 3 weeks
CacheUnused gopher:* 3 days 12 hours
CacheUnused * 4 weeks

預設值

CacheUnused ftp:* 3 days
CacheUnused gopher:* 12 hours
CacheUnused http:* 2 days

Caching -- 啟用 Proxy 快取功能

使用這個指引來啟動檔案的快取功能。啟動了快取功能之後,Proxy 伺服器就可以將從其他伺服器擷取的檔案, 儲存在區域快取中。然後 Proxy 伺服器可回應相同檔案的後續要求,而不必從其他伺服器擷取它們。

格式

Caching {on | off}

預設值

Caching on
註:
如果您更改了 Caching 指引,則必須手動停止伺服器後再重新啟動。 (請參閱啟動與停止 Caching Proxy。)

CdfAware -- 指定這個 Caching Proxy 實例作為 Content Distribution Framework 的一部分

您可以使用這個指引,指定 Caching Proxy 是否為 Content Distribution Framework 的一部分。

格式

CdfAware {yes | no}

預設值

CdfAware no

CdfRestartFile -- 指定要儲存檔名與 url 對映的檔案

使用這個指引來指定檔案的名稱,該檔案儲存檔名與 URL 對映資料,使得它能夠在 Content Distribution Framework 的多個 ibmproxy 實例中持續使用。Caching Proxy 會維護一個對映表,該表格會將要求的 URL 與它在 Web 伺服器上的檔名相關聯。這個檔案讓這份表單能夠在每次重新啟動之後持續儲存。 唯有當 CdfAware 指引被設成時才使用這個指引。

格式

CdfRestartFile path/filename

範例

預設值

CompressAge -- 指定何時壓縮日誌

使用這個指引來指定日誌多少天後即進行壓縮。 日誌比 CompressAge 的設定值還舊時,就會壓縮日誌。 如果 CompressAge 設為 0,則從不壓縮任何日誌。 當天及幾天前的日誌都不會被壓縮。

格式

CompressAge number_of_days

預設值

CompressAge 1

相關指引

CompressCommand -- 指定壓縮指令與參數

使用這個指引建置一個指令,該指令會識別用於壓縮日誌的壓縮公用程式,並且傳送參數到該公用程式。請在儲存日誌當中併入路徑。

壓縮公用程式必須安裝在該機器路徑中所列出的目錄下。

格式

CompressCommand command
command
包括您想要使用且已輸入在在單一行上的指令與參數。 通常參數將包括 %%LOGFILES%%%%DATE%%
%%LOGFILES%%
是可供特定 %%DATE%% 使用的日誌檔的清單。
%%DATE%%
在日誌檔上指定日期戳記。

範例

預設值

相關指引

CompressDeleteAge -- 指定何時刪除日誌

使用這個指引,指定在壓縮日誌後何時要刪除該日誌。 如果日誌比 CompressDeleteAge 的天數設定值還舊,則會刪除它。 如果 CompressDeleteAge 設成 0,或它的值小於為 CompressAge 指引設定的值, 就不會刪除日誌。

註:
壓縮外掛程式不會刪除今天或昨天的日誌。

格式

CompressDeleteAge number_of_days

預設值

CompressDeleteAge 7

相關指引

ConfigFile -- 指定其他配置檔的名稱

使用這個指引來指定額外配置檔的名稱與位置。在處理現行配置檔後, 將處理指定的配置檔中找到的指引。

註:
確定額外配置檔已對使用者 nobody 設定讀取許可權,讓快取代理程式可以讀取這個檔案。

範例

預設值

ConnThreads -- 指定連線管理要用的連線執行緒數目

請利用這個指引來定義連線管理要用的連線執行緒數目。

格式

ConnThreads number

預設值

ConnThreads 5

相關指引

ContinueCaching -- 指定一個檔案中有多少部分需要快取

使用這個指引來指定必須已轉送多少要求的檔案,才能讓 Caching Proxy 完成建立快取檔案, 即使已終止用戶端連線。這個變數的有效值為 0 至 100 範圍內的整數。

比方說,如果指定 ContinueCaching 75,Caching Proxy 就會繼續從內容伺服器轉送檔案並產生快取檔案(如果在 Caching Proxy 發現用戶端連線終止之前已轉送 75% 或以上的檔案)。

格式

ContinueCaching percentage

預設值

ContinueCaching 75 

DefinePicsRule -- 提供內容過濾規則

使用這個指引可以提供必要的資訊給 Proxy, 讓它過濾 URL 的內容(包括分級服務資訊在內)。您可以多次指定這個指引。

格式

DefinePicsRule "filter_name"  {

預設值

DefinePicsRule "RSAC Example" {

DefProt -- 為符合範本之要求指定預設保護設定

您可以使用這個指引來連結一個預設保護設定與符合範本的要求。

註:
如果要正確地發揮保護作用, 則必須在配置檔中將 DefProt 和 Protect 指引放在任何 Pass 或 Exec 指引之前。

格式

DefProt request_template  setup_name [FOR server_IP_address | host_name]
request_template
指定您要連結一個預設保護設定至一些要求所用的範本。伺服器會將送入的用戶端要求與範本做比較, 且如果符合的話,則會連結一個保護設定。

實際上對於符合範本的要求而言, 並不啟動保護,除非該要求也符合後續 Protect 指引上的範本。如何以 DefProt 來使用 Protect 指引的說明,請參閱Protect -- 啟動符合範本之要求的保護設定

setup
已定義在配置檔中的已指名保護設定,您要將這個設定與符合 request_template 的要求連結。保護設定是以保護副指引來定義的。這個參數可使用下列三種格式的其中一種:
[FOR Server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。

您可指定 IP 位址(例如,FOR 240.146.167.72)或者指定主機名稱(例如,FOR hostA.bcd.com)。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

註:
  1. 要使用這個參數,setup 參數的格式必須是一個路徑加上檔名, 或是一個保護設定標籤。setup 參數的格式如果是以大括弧括住實際的保護副指引, 您就無法使用這個參數。
  2. 如果要使用這個參數,您必須將 FOR 或是其他字串(中間不加空格), 放在 setup 參數與 IP_addresshost_name 之間。

不可對伺服器的 IP 位址指定萬用字元。

註:
這個指引必須輸入在同一行上。

範例

預設值

DelayPeriod -- 指定要求之間的暫停功能

使用這個指引, 指定快取代理程式是否要在傳送要求給目的地伺服器之後, 等候一段時間再傳送下一個要求。指定要求之間的延遲功能, 可以減少 Proxy 機器、網路鏈結以及目的地伺服器的工作負荷。 但如果不指定延遲功能,快取代理程式就可以最大的速度執行。 對於緩慢的網際網路連線來說,請考慮指定無延遲期間以便充分使用網路。

註:
如果您與網際網路的連線速度超過 128 kbps, 將 DelayPeriod 設為 on,可避免對正在重新整理的網站太快傳送太多的要求。

格式

DelayPeriod {on | off}

預設值

DelayPeriod On

DelveAcrossHosts -- 指定跨網域的快取功能

使用這個指引,指定快取代理程式是否要跟隨跨主機的超文字鏈結。 如果快取的 URL 包含其他伺服器的鏈結,那麼伺服器可以忽略這個鏈結或跟隨這個鏈結。 如果 DelveInto 指引設為 never,就不套用這個指引。

格式

DelveAcrossHosts {on | off}

預設值

DelveAcrossHosts Off

DelveDepth -- 指定在快取時要跟隨鏈結到什麼程度

使用這個指引, 指定搜尋要載入快取的網頁時,要跟隨的鏈結層數。 如果 DelveInto 指引設為 never,就不套用這個指引。

格式

DelveDepth number_of_levels

預設值

DelveDepth 2

DelveInto -- 指定快取代理程式是否跟隨鏈結

使用這個指引,指定快取代理程式是否要載入快取 URL 鏈結的頁面。

格式

DelveInto {always | never | admin | topn}
always
快取代理程式跟隨所有先前快取的 URL 的鏈結。
never
快取代理程式略過 URL 上所有的鏈結。
admin
快取代理程式只會跟隨 LoadURL 指引中所指定之 URL 上的鏈結。
topn
快取代理程式只會跟隨快取中最常被擷取的檔案的鏈結。

預設值

DelveInto always

DirBackgroundImage -- 指定背景影像給目錄清單

使用這個指引,將背景影像引用到 Proxy 伺服器所產生的目錄清單。 使用 Proxy 伺服器瀏覽 FTP 站台時會產生目錄清單。

指定背景影像的絕對路徑。如果影像位在另一個伺服器,則背景影像必須指定為完整的 URL。 如果未指定背景影像,將使用純白的背景。

格式

DirBackgroundImage /path/file

範例

DirBackgroundImage /images/corplogo.png
DirBackgroundimage http://www.somehost.com/graphics/embossed.gif

預設值

DirShowBytes -- 顯示目錄清單中小型檔案的位元組計數

使用這個指引,來指定目錄清單是否應該包含小於 1 KB 的檔案之正確位元組數目。 Off 值表示目錄清單會將不大於 1 KB 的檔案,都以 1 KB 顯示。

格式

DirShowBytes {on | off}

預設值

DirShowBytes Off

DirShowCase -- 在目錄清單上以區分大小寫的方式排序檔案

使用這個指引來指定目錄清單在排序檔案名稱時,是否應該區分大小寫字母。

On 值表示檔案清單中大寫字母會放在小寫字母前面。

格式

DirShowCase {on | off}

預設值

DirShowCase On

DirShowDate -- 在目錄清單顯示上次修改的日期

使用這個指引,來指定目錄清單是否應該包含上次修改每個檔案的日期。

格式

DirShowDate {on | off}

預設值

DirShowDate On

DirShowDescription -- 在目錄清單中顯示檔案的說明

使用這個指引, 指定目錄清單是否應該包含 HTML 檔案的說明。 說明是從檔案的 HTML <title> 標籤取得。

FTP 目錄清單的說明會顯示檔案的 MIME 類型(如果可以決定的話)。

格式

DirShowDescription {on | off}

預設值

DirShowDescription On

DirShowHidden -- 在目錄清單中顯示隱藏檔案

使用這個指引來指定目錄清單是否應該在目錄中包含任何隱藏檔案。 只要是名稱以句點 (.) 開頭的檔案, 伺服器一律視為隱藏檔。

格式

DirShowHidden {on | off}

預設值

DirShowHidden On

DirShowIcons -- 在目錄清單中顯示圖示

使用這個指引來指定伺服器是否要在目錄清單中併入圖示。圖示可用來提供一種圖形表示法, 以表示清單中檔案的內容類型。這些圖示本身是由 AddBlankIcon、AddDirIcon、AddIcon、AddParentIcon 和 AddUnknownIcon 指引來定義的。

格式

DirShowIcons {on | off}

預設值

DirShowIcons On

DirShowMaxDescrLength -- 指定目錄清單說明的最大長度

使用這個指引,來設定顯示在目錄清單的說明欄位的最大字元數。

格式

DirShowMaxDescrLength number_of_characters

預設值

DirShowMaxDescrLength 25

DirShowMaxLength -- 設定目錄清單中檔案名稱的最大長度

使用這個指引來設定目錄清單中,檔案名稱最多可使用的字元數。

格式

DirShowMaxDescrLength number_of_characters

預設值

DirShowMaxLength 25

DirShowMinLength -- 設定目錄清單中檔案名稱的最小長度

使用這個指引,來設定目錄清單中一律保留給檔名的字元數下限。 目錄中的檔名可以超過這個數目。不過,檔名不能超過 DirShowMaxLength 指引上指定的數目。

格式

DirShowMinLength number_of_characters

預設值

DirShowMinLength 15

DirShowSize -- 在目錄清單中顯示檔案大小

使用這個指引,來指定目錄清單是否應該包含每個檔案的大小。

格式

DirShowSize {on | off}

預設值

DirShowSize On

Disable -- 停用 HTTP 方法

使用這個指引來指定伺服器不接受哪些 HTTP 方法。 對於伺服器要拒絕的每一個方法,輸入個別的 Disable 指引。

預設配置檔中啟用了 GET、HEAD、OPTIONS、POST 和 TRACE 方法,並停用所有其他支援的 HTTP 方法。如果要停用一個目前啟動的方法,請將該方法自 Enable 指引中刪除並將它加到 Disable 指引中。

格式

Disable method
註:
「配置與管理」表單使用 POST 方法來更新伺服器配置。如果您停用 POST 方法,就無法使用「配置與管理」表單。

預設值

Disable   PUT
Disable   DELETE
Disable   CONNECT 

DisInheritEnv -- 指定哪些環境變數不由 CGI 程式繼承

請使用這個指引來指定,您不要 CGI 程式繼承哪些環境變數(除了 CGI 處理程序的特定 CGI 環境變數以外)。

依預設, 所有環境變數都是由 CGI 程式繼承。使用這個指引可以將個別的環境變數排除在外,不讓 DisInheritEnv 指引來繼承。

格式

DisInheritEnv environment_variable

範例

DisInheritEnv PATH
DisInheritEnv LANG

在本範例中,除了 PATH 和 LANG 以外, 所有環境變數都會由 CGI 程式繼承。

預設值

DNS-Lookup -- 指定伺服器是否查閱用戶端主機名稱

使用這個指引來指定伺服器是否查閱提出要求的用戶端的主機名稱。

格式

DNS-Lookup {on | off}

所使用的值都會影響伺服器的下列幾項作業:

預設值

DNS-Lookup   Off

Enable -- 啟用 HTTP 方法

使用這個指引來指定伺服器接受哪些 HTTP 方法。

您可以啟用所需數量的 HTTP 方法。請為每個伺服器要接受的方法輸入個別的 Enable 指引。

格式

Enable method

如果某個 URL 沒有指定 Service 指引, 那麼您可以用 Enable 指引,執行任何 HTTP 方法所自訂的程式設計。 您在這個指引上所指定的程式,將置換該方法的標準程序。

Enable method /path/fileDLL:function_name

預設值

Enable GET
Enable HEAD
Enable POST
Enable TRACE
Enable OPTIONS

EnableTcpNodelay -- 啟用 TCP NODELAY Socket 選項

請利用這個指引來啟用 TCP NODELAY Socket 選項。

當在 Caching Proxy 和用戶端之間傳輸 SSL 訊息交換或短 HTTP 回應之類的小型 IP 封包時,EnableTcpNodelay 指引可以改進效能。 依預設,會啟用所有 Socket 的 TCP NODELAY 選項。

格式

EnableTcpNodelay {All | HTTP | HTTPS | None}

預設值

EnableTcpNodelay  All

Error -- 自訂「錯誤」步驟

使用這個指引,指定在執行「錯誤」步驟時, 要伺服器呼叫的自訂應用程式函數。 這個程式碼只會在發生錯誤時執行,以提供自訂的錯誤常式。

格式

Error  request_template /path/file:function_name
request_template
指定能進一步決定是否已呼叫您的應用程式函數之要求範本。在這個規格當中,可以包含通訊協定、網域及主機; 可以在前面加上斜線 (/),也可以用星號 (*) 當作萬用字元。例如,/front_page.htmlhttp://www.ics.raleigh.ibm.com/pub*/** 均有效。
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

Error  /index.html /ics/api/bin/icsext05.so:error_rtns

預設值

ErrorLog -- 指定用來記載伺服器錯誤的檔案

使用這個指引,指定伺服器記錄內部錯誤所用的路徑與檔案名稱。

註:
如果您變更使用者 ID、群組 ID 或日誌目錄路徑的伺服器預設值, 請建立新目錄並更新目錄的許可權及擁有權。如果要啟動伺服器, 將資訊寫入使用者定義的日誌目錄中,請將該目錄的許可權設成 755, 並將使用者定義的伺服器使用者 ID 設成擁有人。比方說,如果您將伺服器的使用者 ID 從預設值改成 jdoe, 且將預設日誌目錄改成 server_root/account, 則 server_root/account 目錄必須具有許可權 755, 且為 jdoe 所有。

如果伺服器正在執行,那麼它會在每日午夜啟動新的日誌檔。 否則,伺服器會在任意日的第一次啟動時, 啟動一個新的日誌檔。在建立該檔時, 伺服器使用您所指定的檔名,再加上日期當作字尾。日期字尾的格式為 Mmmddyyyy, 其中 Mmm 代表月份的前三個字母; dd 代表月份的日期;而 yyyy 代表年份。

格式

ErrorLog  /path/logs_directory/file_name

預設值

ErrorPage -- 為特定的錯誤狀況指定一個自訂的訊息

您可以使用這個指引,指定伺服器遇到某種特定的錯誤狀況時, 要傳送到提出要求之用戶端的檔案名稱。 在 ibmproxy.conf 配置檔中會提供 ErrorPage 指引,使錯誤關鍵字與錯誤訊息檔案產生關聯。

如果要自訂錯誤訊息,您可以修改 ErrorPage 指引,使錯誤關鍵字與不同檔案產生關聯, 或您可以修改提供的錯誤訊息檔案。比方說,您可以變更訊息,以包含更多有關問題導因的資訊, 以及建議可能的解決方法。如果是內部網路,則可以提供使用者要找的聯絡人。

ErrorPage 指引可以放在配置檔的任何位置。 當錯誤發生時, 它會根據配置檔中所定義的對映規則來處理檔案。因此,您要傳送的檔案必須位於透過對映規則(由 Fail、Map、NameTrans、Pass、Redirect 和 Service 等指引所定義)可及的位置。最起碼一定要有一個 Pass 指引,讓伺服器傳遞錯誤訊息檔。

格式

ErrorPage keyword /path/filename.html
keyword
指定與某個錯誤狀況相關聯的關鍵字之一。 檔案 ibmproxy.conf 中的 ErrorPage 指引列出關鍵字。您無法變更關鍵字。
/path/filename.html
指定 Web 上用戶端所看到的錯誤檔的完整 Web 名稱。 預設錯誤訊息檔案位在 /HTML/errorpages/ 中。

範例

ErrorPage scriptstart /HTML/errorpages/scriptstart.htmls

在這個範例當中,發生 scriptstart 狀況時, 伺服器會將 /HTML/errorpages/ 目錄中找到的 scriptstart.htmls 檔傳到用戶端。

下列 HTML 文字是檔案可能包含的範例:

<HTML>
<HEAD>
<TITLE>Message for SCRIPTSTART condition</TITLE>
</HEAD>
<BODY>
The CGI program could not be started.
<P>
<A HREF="mailto:admin@websvr.com">Notify the administrator</A>
of this problem.
</BODY>
</HTML>

如果符合伺服器配置檔中上述路徑的指引為 PASS /* /wwwhome/*, 則這個訊息檔的完整路徑會是 /wwwhome/HTML/errorpages/scriptstart.htmls

自訂伺服器傳回的錯誤訊息

每個錯誤狀況都是以關鍵字指出。 如果要決定要自訂哪些錯誤訊息,請先檢視 Caching Proxy 提供的錯誤訊息檔案, 您可以在 /HTML/errorpages 找到這些檔案。錯誤頁面包括錯誤碼、預設訊息、它們的原因說明,以及適當的恢復動作。

然後,執行下列其中一項來變更錯誤訊息:

錯誤狀況、原因及預設訊息

所有錯誤關鍵字與預設錯誤訊息檔均會列在 ibmproxy.conf 檔中的 ErrorPage 指引章節。錯誤訊息檔案包括錯誤訊息號碼、關鍵字、預設訊息、說明及使用者回應(動作)。

預設值

ibmproxy.conf 檔中包含許多預設值

如果您沒有替某個錯誤狀況修改一個 ErrorPage 指引, 則會傳送伺服器針對該狀況的預設錯誤頁面。

EventLog -- 指定事件日誌檔的路徑

使用這個指引來指定事件日誌路徑及檔名。事件日誌擷取關於快取本身的參考訊息。

註:
如果您變更使用者 ID、群組 ID 或日誌目錄路徑的伺服器預設值, 請建立新目錄並更新目錄的許可權及擁有權。如果要啟動伺服器, 將資訊寫入使用者定義的日誌目錄中,請將該目錄的許可權設成 755, 並將使用者定義的伺服器使用者 ID 設成擁有人。比方說,如果您將伺服器的使用者 ID 從預設值改成 jdoe, 且將預設日誌目錄改成 server_root/account, 則 server_root/account 目錄必須具有許可權 755, 且為 jdoe 所有。

如果伺服器正在執行,那麼它會在每日午夜啟動新的日誌檔。 否則,伺服器會在任意日的第一次啟動時, 啟動一個新的日誌檔。在建立該檔時, 伺服器使用您所指定的檔名,再加上日期當作字尾。日期字尾的格式為 Mmmddyyyy, 其中 Mmm 代表月份的前三個字母; dd 代表月份的日期;而 yyyy 代表年份。

格式

EventLog  /path/logs_directory/file_name

預設值

Exec -- 針對符合的要求執行 CGI 程式

使用這個指引,為您想接受的要求指定一個範本, 並以執行 CGI 程式的方式加以回應。 在要求符合 Exec 指引上的範本之後, 該要求便不會與任何後續指引上的要求範本做比較。

格式

Exec  request_template program_path [Server_IP_address | host_name]
request_template
指定伺服器要接受的要求範本,並以執行 CGI 程式的方式來回應。

您在 request_templateprogram_path 兩者中, 必須以星號 (*) 當作萬用字元。要求中符合 request_template 萬用字元的部分, 必須以包含 CGI 程式的檔案名稱為開頭。

該要求也可以包含額外資料,這個資料會在 PATH_INFO 環境變數傳遞給 CGI 程式。這些額外的資料是放在要求上的 CGI 程式名稱後的第一個斜線字元 (/) 之後。這些資料根據 CGI 規格來傳遞。

program_path
指定含有伺服器針對要求執行 CGI 程式之檔案所在的路徑。program_path 也必須有萬用字元。 該萬用字元將換成包含 CGI 程式的檔名。

Exec 指引是遞迴出現的,而且適用於所有的子目錄。您不必在 cgi-bin 和 admin-bin 下對每個目錄分別使用不同的 Exec 指引。

[Server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。

您可以指定 IP 位址(例如,240.146.167.72)或指定主機名稱(例如,hostA.bcd.com)。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

萬用字元不可以用來指定伺服器 IP 位址。

範例

就下列範例而言,如果伺服器收到 /idd/depts/plan/c92 的要求, 則會執行 /depts/bin/plan.exe 中的 CGI 程式,且將 c92 當作輸入傳遞給程式。

下列範例中使用選用性的 IP 位址參數。如果您的伺服器接收到以 /cgi-bin/ 開頭的要求,它會根據該要求進入的網路連線 IP 位址, 自不同的目錄中,對這個要求提供服務。如果是進入 130.146.167.72 的要求, 伺服器會使用 /CGI-BIN/customerA 目錄。對於進入 0.83.100.45 位址的任何連線之要求,伺服器會使用 /CGI-BIN/customerB 目錄。

Exec    /cgi-bin/*    /CGI-BIN/customerA/*   130.129.167.72
Exec    /cgi-bin/*    /CGI-BIN/customerB/*   0.83.100.45

下列範例中使用了選用性的主機名稱參數。 如果您的伺服器接收到以 /cgi-bin 開頭的要求, 它會根據 URL 中的主機名稱, 自不同的目錄中,對這個要求提供服務。對於進入 hostA.bcd.com 的要求, 伺服器會使用 /CGI-BIN/customerA 目錄。對於進入 hostB.bcd.com 的要求,伺服器會使用 /CGI-BIN/customerB 目錄。

Exec    /cgi-bin/*    /CGI-BIN/customerA/*   hostA.bcd.com
Exec    /cgi-bin/*    /CGI-BIN/customerB/*   hostB.bcd.com

預設值

ExportCacheImageTo -- 將快取記憶體匯出至磁碟

您可以使用這個指引,將快取記憶體內容匯出到傾出檔。當記憶體快取會在重新啟動期間流失時,或是針對多個 Proxy 部署同一個快取記憶體時,這個指引很有用。

格式

ExportCacheImageTo export_file_name

預設值

ExternalCacheManager -- 從 IBM WebSphere Application Server 配置動態快取的 Caching Proxy

使用這個指引配置 Caching Proxy 去辨識一個可從中快取動態建立資源的 IBM WebSphere Application Server (它是以 Caching Proxy 配接卡模組來配置)。Caching Proxy 儲存數份 JSP 結果,這些結果亦儲存在應用程式伺服器的動態快取記憶體中。Caching Proxy 只快取其群組 ID 符合 ExternalCacheManager 項目的 IBM WebSphere Application Server 中的內容。

請注意:也需要新增 Service 指引到 Caching Proxy 配置檔才能啟用這項特性。在應用程式伺服器還需要其他配置步驟。 請參閱快取動態產生的內容,以取得完整資訊。

格式

ExternalCacheManager External_Cache_Manager_ID  Maximum_Expiry_Time  
External_Cache_Manager_ID
指定給服務 Proxy 的 IBM WebSphere Application Server 的 ID。 這個 ID 必須符合在應用程式伺服器上的 dynacache.xml 檔中 externalCacheGroup: group id 屬性設定的 ID。
Maximum_Expiry_Time
為代表外部快取管理程式快取的資源設定的預設有效時間。 如果外部快取管理程式在指定時間內沒有使快取的資源失效,那麼資源會在到達指定時間之後到期。 您可以採用分鐘或秒鐘為單位來指定時間。

範例

下列項目定義一個位於 www.xyz.com 網域的外部快取管理程式(一個 IBM WebSphere Application Server), 它的資源在 20 秒以內會到期。

ExternalCacheManager   IBM-CP-XYZ-1  20 seconds

預設值

Fail -- 拒絕符合的要求

使用這個指引,為伺服器不處理的要求指定範本。 在要求符合 Fail 指引上的範本之後, 該要求便不會與任何後續指引上的要求範本再做比較。

格式

Fail request_template [Server_IP_address | host_name]
request_template
為伺服器要拒絕的要求指定範本。如果有一個要求符合該範本,則伺服器會傳送一個錯誤訊息給要求者。

您可以在範本中使用星號當作萬用字元。但是緊接在斜線 (/) 後面的鼻音字元 (~),必須確實符合; 不可以用萬用字元代替。

[Server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。

您可以指定 IP 位址(例如,240.146.167.72)或指定主機名稱(例如,hostA.bcd.com)。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

不可對伺服器的 IP 位址指定萬用字元。

範例

在下列範例中,伺服器會拒絕以 /usr/local/private/ 開頭的所有要求。

Fail /usr/local/private/*

下列範例是使用選用性的 IP 位址參數。 如果要求是進入 IP 位址 240.146.167.72 的網路連線,則伺服器會拒絕開頭是 /customerB/ 的任何要求。如果要求是進入 IP 位址 0.83.100.45 的網路連線,則伺服器會拒絕開頭是 /customerA/ 的任何要求。

Fail    /customerB/*    240.146.167.72
Fail    /customerA/*    0.83.100.45

下列範例是使用選用性的主機名稱參數。 如果要求是進入 hostA.bcd.com , 伺服器會拒絕任何以 /customerB/ 開頭的要求。 如果要求是進入 hostB.bcd.com, 伺服器會拒絕任何以 /customerA/ 開頭的要求。

Fail    /customerB/*    hostA.bcd.com
Fail    /customerA/*    hostB.bcd.com

預設值

flexibleSocks -- 啟用有彈性的 SOCKS 實作

使用這個指引, 告訴 Proxy 用 SOCKS 配置檔來決定要建立哪一種類型的連線。

格式

flexibleSocks {on | off}

預設值

flexibleSocks on

FTPDirInfo -- 產生目錄的歡迎使用或說明訊息

使用這個指引,使得 FTP 伺服器能夠對目錄產生歡迎使用或描述性訊息。這個訊息可以選擇性地顯示,作為 FTP 清單的一部分。FTPDirInfo 指引容許您控制將在何處顯示該訊息。

格式

FTPDirInfo  {top | bottom | off} 
top
將歡迎使用訊息顯示在頁面頂端,在目錄中的檔案清單之前。
bottom
將歡迎使用訊息顯示在頁面底端,在目錄中的檔案清單之後。
off
不顯示歡迎頁面。

預設值

FTPDirInfo top

ftp_proxy -- 指定針對 FTP 要求的另一部 Proxy 伺服器

如果您的 Proxy 伺服器是 Proxy 鏈結的一部分, 請使用這個指引,指定另一個 Proxy 的名稱,讓伺服器針對 FTP 要求加以連接。 您必須指定完整的 URL,包括尾端的斜線字元 (/)。如果需要使用選用的網域名稱或範本的資訊,請參閱no_proxy -- 直接連接到網域的範本

格式

ftp_proxy full_URL [domain_name_or_template]

範例

ftp_proxy http:// outer.proxy.server/

預設值

FTPUrlPath -- 指定如何解譯 FTP URL

使用這個指引,指定是否應將 FTP URL 中的路徑資訊, 解譯為相對於登入使用者的工作目錄,還是相對於根目錄。

格式

FTPUrlPath  {relative | absolute} 

如果 FTPUrlPath 指引設為 absolute, 那麼在 FTP URL 路徑中,一定要加入登入使用者的 FTP 工作目錄。 如果指定的是 FTPUrlPath Relative, 那麼在 FTP URL 路徑中,絕對不可加上登入使用者的 FTP 工作目錄。 比方說,如果要存取檔案 test1.html(它包含於登入使用者的工作目錄 /export/home/user1 中),需要下列 URL 路徑,這是根據 FTPUrlPath 指引的設定而定:

預設值

Gc -- 指定記憶體回收

您可以使用這個指引,指定是否使用記憶體回收。如果您已啟用快取功能, 伺服器會使用記憶體回收程序,刪除不應再快取的檔案。檔案是根據它們的到期日及其他 Proxy 指引值來刪除。 如果已啟用快取,通常會使用記憶體回收。如果不使用記憶體回收,Proxy 快取的使用會無效。

格式

Gc {on | off}

預設值

Gc On

GCAdvisor -- 自訂記憶體回收程序

使用這個指引,指定伺服器用來記憶體回收的自訂應用程式。

格式

GCAdvisor /path/file:function_name
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

GCAdvisor /api/bin/customadvise.so:gcadv

GcHighWater -- 指定何時開始記憶體回收

使用這個指引來指定必須填滿總快取容量的多少個百分比才能觸發記憶體回收。 這個百分比稱為高臨界值標記。 高臨界值標記是以總快取容量的百分率指定的。 繼續記憶體回收直到到達低臨界值標記--關於設定這個標記的資訊,請參閱GcLowWater -- 指定何時結束記憶體回收。 高臨界值標記的百分比可設定為介於 50 與 95 之間。

格式

GcHighWater percentage

預設值

GcHighWater 90 

GcLowWater -- 指定何時結束記憶體回收

使用這個指引來指定總快取容量達多少百分比才會觸發記憶體回收結束。 這個百分比稱為低臨界值標記。 低臨界值標記, 是以總快取容量的百分率指定的。 它的值必須設定為低於高臨界值標記的值; 關於設定高臨界值標記的資訊,請參閱GcHighWater -- 指定何時開始記憶體回收

格式

GcLowWater percentage

預設值

GcLowWater 60

gopher_proxy -- 指定 gopher 要求的另一個 Proxy 伺服器

如果您的 Proxy 伺服器是 Proxy 鏈結的一部分, 請使用這個指引,指定另一個 Proxy 的名稱,讓伺服器針對 Gopher 要求加以連接。 您必須指定完整的 URL,包括尾端的斜線 (/)。如果需要使用選用的網域名稱或範本的資訊,請參閱no_proxy -- 直接連接到網域的範本

格式

gopher_proxy full_URL[domain_name_or_template]

範例

gopher_proxy http://outer.proxy.server/

預設值

GroupId -- 指定群組 ID

使用這個指引, 在存取檔案之前,指定伺服器要改成什麼群組名稱或號碼。

如果您變更了這個指引,則必須先手動停止伺服器, 然後再重新啟動,這樣才能使變更生效。如果只是重新啟動伺服器, 變更並不會生效。(請參閱啟動與停止 Caching Proxy。)

註:
如果您變更使用者 ID、群組 ID 或日誌目錄路徑的伺服器預設值, 請建立新目錄並更新目錄的許可權及擁有權。如果要啟動伺服器, 將資訊寫入使用者定義的日誌目錄中,請將該目錄的許可權設成 755, 並將使用者定義的伺服器使用者 ID 設成擁有人。比方說,如果您將伺服器的使用者 ID 從預設值改成 jdoe, 且將預設日誌目錄改成 server_root/account, 則 server_root/account 目錄必須具有許可權 755, 且為 jdoe 所有。

格式

GroupId { group_name | group_number} 

預設值

AIX: GroupId nobody

HP-UX: GroupId other

Linux:

Solaris: GroupId nobody

HeaderServerName -- 指定在 HTTP 標頭中傳回的 Proxy 伺服器名稱

使用這個指引來指定在 HTTP 標頭中傳回的 Proxy 伺服器名稱

格式

HeaderServerName name

預設值

Hostname -- 指定伺服器的完整網域名稱或 IP 位址

使用這個指引,來指定從檔案要求傳回到用戶端的網域名稱或 IP 位址。如果指定的是網域名稱, 則網域名稱伺服器必須能夠將這個名稱解析為 IP 位址。如果指定的是 IP 位址,則不需要或不存取網域名稱伺服器。

註:
當設定陣列時,應該在該陣列的所有成員上以相同方式配置 Hostname 指引。

格式

Hostname {name | IP address}

預設值

依預設,在起始配置檔中沒有指定這個指引。 如果在配置檔中沒有指定這個指引,那麼這個值會預設成網域名稱伺服器中所定義的主機名稱。

http_proxy -- 指定 HTTP 要求所用的另一個 Proxy 伺服器

如果您的 Proxy 伺服器是 Proxy 鏈結的一部分, 請使用這個指引,指定另一個 Proxy 的名稱,讓伺服器針對 HTTP 要求加以連接。 您必須指定完整的 URL,包括尾端的斜線 (/)。 如果需要使用選用的網域名稱或範本的資訊,請參閱no_proxy -- 直接連接到網域的範本

格式

http_proxy full_URL[domain_name_or_template]

範例

http://outer.proxy.server/

預設值

HTTPSCheckRoot -- 過濾 HTTPS 要求

使用這個指引來指定 Caching Proxy 是否要擷取 URL 的不安全首頁並嘗試在該處尋找標籤。 如果找到標籤,就會引用到安全要求上。 比方說,如果您要求 https://www.ibm.com/,Caching Proxy 會擷取 http://www.ibm.com/,在其中搜尋標籤,然後使用找到的任何標籤來過濾 https://www.ibm.com/。

如果 HTTPSCheckRoot 被設成 off,Caching Proxy 就不會擷取不安全首頁並在其中搜尋標籤。

格式

HTTPSCheckRoot {on | off}

預設值

HTTPSCheckRoot  on

ICP_Address -- 指定 ICP 查詢的 IP 位址

使用這個副指引來指定要用於傳送及接收 ICP 查詢的 IP 位址。它必須含括在 <MODULEBEGIN> ICP <MODULEEND> 指引內。

格式

ICP_Address IP_address

預設值

依預設,在起始配置檔中沒有指定這個指引。 如果在配置檔中沒有指定這個指引,那麼這個值會預設成在任何介面上接受及傳送 ICP 查詢。

ICP_MaxThreads -- 指定 ICP 查詢的最大執行緒數

使用這個副指引來指定接收 ICP 查詢的執行緒數。 必須在 <MODULEBEGIN> ICP<MODULEEND> 指引內含括它。

註:
在 Redhat Linux 6.2 和更早的版本中,這個數字一定很低,因為每一個程序可以建立的最大執行緒數很少。 指定 ICP 使用大量執行緒可能會限制在服務要求時可使用的執行緒數。

格式

ICP_MaxThreads number_of_threads

預設值

ICP_MaxThreads   5

Occupier -- 指定 ICP 叢集的成員

如果 Proxy 伺服器是 ICP 叢集的一部分,請使用這個副指引來指定 ICP 同伴。 必須在 <MODULEBEGIN> ICP<MODULEEND> 指引內含括它。

當新同伴新增到 ICP 叢集時,必須將 ICP 同伴資訊新增到所有現存同伴的配置檔中。每一個同伴使用一行。 請注意:現行主機也可以加入同伴清單。 當 ICP 起始設定時會忽略現行主機的項目。 這樣會使得單一配置檔有可能被複製到其他同伴機器,但不需編輯它將現行主機予以移除。

格式

ICP_Peer hostname http_port icp_port
主機名稱
同層級名稱
http_port
同層級的 Proxy 埠
icp_port
同層級的 ICP 伺服器埠

範例

下面一行新增主機 abc.xcompany.com 作為同伴,它的 Proxy 埠是 80,ICP 埠是 3128。

ICP_Peer  abc.xcompany.com  80  3128

預設值

ICP_Port -- 指定用於 ICP 查詢的埠號

使用這個副指引來指定 ICP 伺服器接收 ICP 查詢的埠號。 它必須含括在 <MODULEBEGIN> ICP <MODULEEND> 指引內。

格式

ICP_Port port_number

預設值

ICP_Port 3128

ICP_Timeout -- 指定 ICP 查詢的最大等待時間

使用這個副指引來指定 Caching Proxy 等待回應 ICP 查詢的最長時間。 這個時間是以毫秒為單位指定。 必須在 <MODULEBEGIN> ICP<MODULEEND> 指引內含括它。

格式

ICP_Timeout  timeout_in_milliseconds

預設值

ICP_Timeout  2000

IgnoreURL -- 指定不重新整理的 URL

使用這個指引,指定快取代理程式不會載入的 URL。當快取代理程式要從快取 URL 載入鏈結的網頁時, 就可以善加使用這個指引。您可以重複使用 IgnoreURL, 以指出不同的 URL 或 URL 遮罩。這個指引的值可以用星號 (*) 作為萬用字元,來引用遮罩。

格式

IgnoreURL URL

範例

IgnoreURL http://www.yahoo.com/
IgnoreURL http://*.ibm.com/*

預設值

IgnoreURL */cgi-bin/* 

imbeds -- 指定是否要使用伺服器端併入處理程序

您可以使用這個指引,指定您是要針對檔案系統、CGI 程式、還是兩者所提供的檔案, 進行伺服器端併入處理程序。伺服器端併入處理程序是針對內容類型為 text/x-ssi-html 的檔案執行。 您也可以對 text/html 內容類型的檔案執行伺服器端併入處理程序。關於內容類型的進一步資訊,請參閱AddType -- 指定具有特定字尾的檔案的資料類型

您可以使用伺服器端併入處理程序, 將資訊動態插入到傳回的檔案當中。這類資料包括日期、檔案大小、上次變更檔案的日期、CGI 或伺服器端併入環境變數或文字檔案。只對在區域產生的檔案執行伺服器端併入處理程序。Caching Proxy 不對代理的或快取的物件執行伺服器端併入處理程序。

伺服器端併入處理程序會讓伺服器在每次使用檔案時,搜尋其中的特殊指令。 這樣會影響伺服器效能而且使用戶端的回應時間變慢。

格式

imbeds {on | off | files | cgi | noexec}  {SSIOnly | html}
on
對來自檔案系統及 CGI 程式的檔案執行伺服器端併入處理程序。
off
不對任何檔案執行伺服器端併入處理程序。
files
只對來自檔案系統的檔案執行伺服器端併入處理程序。
cgi
只對 CGI 程式傳回的檔案執行伺服器端併入處理。
noexec
SSIOnly
針對 text/x-ssi-html 內容類型的檔案,執行伺服器端併入處理程序。
html
針對 text/html 內容類型及 text/x-ssi-html 內容類型的檔案, 執行伺服器端併入處理程序。

伺服器會檢查所擷取的每個檔案的內容類型, 以及所處理的每個 CGI 程式的輸出。

伺服器端併入處理程序通常只針對內容類型為 text/x-ssi/html 的檔案執行。然而, 您也可以指定要為伺服器端併入處理程序處理 text/html 內容類型的檔案。

註:
伺服器將 html、.html 和 .htm 都視為 html。其他任何檔案都視為 SSIOnly 程序

每個字尾都必須有一個 AddType 指引,是用正確的內容類型加以定義的。 如果您是使用 .htm 或 .html 以外的字尾, 則必須用內容類型 text/x-ssi/html 來定義 AddType 指引。

預設值

imbeds on SSIOnly

ImportCacheImageFrom -- 從檔案匯入快取記憶體

您可以使用這個指引,從傾出檔匯入快取記憶體內容。當記憶體快取會在重新啟動期間流失時,或是針對多個 Proxy 部署同一個快取記憶體時,這個指引很有用。

格式

ImportCacheImageFrom import_file_name

預設值

InheritEnv -- 指定 CGI 程式繼承的環境變數

請使用這個指引來指定,您要 CGI 程式繼承的環境變數(不同於 CGI 處理程序的特定 CGI 環境變數)。

如果您沒有併入 InheritEnv 指引,所有環境變數都會由 CGI 程式加以繼承。 如果併入了任何 InheritEnv 指引, 則只有在 InheritEnv 指引中所指定的環境變數, 才會與 CGI 專用環境變數一起被繼承。本指引讓您可以選擇是否起始設定繼承的變數值。

格式

InheritEnv environment_variable

範例

InheritEnv PATH
InheritEnv LANG=ENUS

在本範例中,只有 PATH 和 LANG 環境變數會由 CGI 程式繼承, 而 LANG 環境變數將以 ENUS 值起始設定。

預設值

無。依預設, 所有環境變數都是由 CGI 程式繼承。

InputTimeout -- 指定輸入逾時

使用這個指引, 來設定用戶端連接到伺服器之後,傳送要求所允許的時間。 用戶端會先連線到伺服器,然後再傳送要求。如果用戶端在這個指引所設定的時間內未傳送要求, 則伺服器會關閉連線。您可以用小時、分鐘(或 mins)及秒鐘 (secs) 的任何組合指定時間值。

格式

InputTimeout time

範例

InputTimeout 3 mins 30 secs

預設值

InputTimeout 2 minutes

JunctionReplaceUrlPrefix -- 當搭配 JunctionRewrite 外掛程式使用時,取代 URL 而不是插入字首

這個指引會置換 JunctionRewrite 外掛程式的預設動作,可讓 Proxy 更正 HTML 頁面中的特定 URL 鏈結。 它用來結合 JunctionRewrite 指引。

JunctionReplaceUrlPrefix 指引會導引 JunctionRewrite 外掛程式將 URL 從 url_pattern_1 取代為 url_pattern_2,而不是在 URL 開頭插入字首。

格式

JunctionReplaceUrlPrefix url_pattern_1 url_pattern_2

範例

JunctionReplaceUrlPrefix /server1.internaldomain.com/*  /server1/*     

在這個範例中,假設 URL 是 /server1.internaldomain.com/notes.nsf,假設字首是 /server1。 JunctionRewrite 外掛程式不會插入字首來將 URL 重新撰寫成 /server1/server1.internaldomain.com/notes.nsf,它會將 URL 改成 /server1/notes.nsf。

預設值

JunctionRewrite -- 啟用 URL 重新撰寫

這個指引會在 Caching Proxy 中啟用接合重新撰寫常式,以便重新撰寫來自來源伺服器的回應,確定伺服器關聯的 URL 在使用接合時,會對映到適當的來源伺服器。 如果您設定了 JunctionRewrite on 但未指定 UseCookie 選項,您必須也啟用接合重新寫入外掛程式。接合是由 Proxy 對映規則所定義。

請參閱使用 UseCookie 做為 JunctionRewrite 的替代方案擴充 JunctionRewrite 功能的 transmogrifier 外掛程式範例,以取得 JunctionRewrite 的其他資訊。

格式

JunctionRewrite {on | on UseCookie | off}

預設值

JunctionRewrite off

JunctionRewriteSetCookiePath -- 當搭配 JunctionRewrite 外掛程式時,重新撰寫 Set-Cookie 標頭中的路徑選項

這個指引可在 Cookie 名稱相符時,讓 Proxy 重新撰寫 Set-Cookie 標頭中的路徑選項。 如果回應需要接合,且定義了接合字首,就會將字首插在每個路徑前面。 它可用來搭配 JunctionRewrite 外掛程式,也可用來搭配 RewriteSetCookieDomain 指引。

格式

JunctionRewriteSetCookiePath cookie-name1 cookie-name2...  
cookie-name
Set-Cookie 標頭中的 Cookie 名稱。

預設值

JunctionSkipUrlPrefix -- 當搭配 JunctionRewrite 外掛程式時,跳過重新撰寫已包含字首的 URL

這個指引會置換 JunctionRewrite 外掛程式的預設動作,如果 URL 型樣已經符合,就會跳過 URL 重新撰寫。 它利用 JunctionRewrite 外掛程式來提供更正 HTML 頁面中某些 URL 鏈結的方式。這個指引通常用來跳過已包含字首的 URL。

格式

JunctionSkipUrlPrefix url_pattern 

範例

JunctionSkipUrlPrefix  /server1/*     

在這個範例中,假設 URL 是 /server1/notes.nsf,假設接合字首是 /server1/。URL 不需要重新撰寫成 /server1/server1/notes.nsf,JunctionRewrite 外掛程式會跳過重新撰寫 URL,URL 會維持不變,仍是 /server1/notes.nsf。

預設值

KeepExpired -- 修改 Proxy 快取的記憶體回收

使用這個指引來指定在 Proxy 快取記憶體的記憶體回收期間對到期檔案的處理方式。有效的值有 onoff 兩種。 如果這個指引設為 on,那麼在進行記憶體回收時, 過期檔案都可以刪除,同時也是刪除時首要考慮的檔案。 如果快取滿了,就先刪除過期檔案。 如果是 off,那麼即使 Proxy 快取沒有滿, 在進行記憶體回收時,凡是過期檔案都一律刪除。

格式

KeepExpired {on | off}

預設值

KeepExpired off

KeyRing -- 指定金鑰環資料庫的檔案路徑

使用這個指引,指定伺服器將對 SSL 要求使用的金鑰環資料庫的檔案路徑。 金鑰環檔案是透過 iKeyman 金鑰管理公用程式產生的。

註:
SuSE Linux 不支援 SSL 指引。

格式

KeyRing filename

範例

Windows:KeyRing c:\Program Files\IBM\edge\cp\\key.kdb

Linux 和 UNIX: KeyRing /etc/key.kdb

預設值

KeyRingStash -- 指定金鑰環資料庫密碼檔的檔案路徑

使用這個指引,指定金鑰環資料庫密碼檔的檔案路徑。 密碼檔案是在建立金鑰環資料庫檔案時,透過 iKeyman 金鑰管理公用程式所產生的。

註:
SuSE Linux 不支援 SSL 指引。

格式

KeyRingStash file_path

範例

Windows: KeyRingStash c:\Program Files\IBM\edge\cp\key.sth

Linux 和 UNIX: KeyRingStash /etc/key.sth

預設值

LimitRequestBody -- 指定 PUT 或 POST 要求中的主體大小上限

您可以使用這個指引來控制 PUT 或 POST 要求中的主體大小上限。LimitRequest 指引係用來保護 Proxy 使其不受攻擊。

可將值指定成千位元組 (K)、百萬位元組 (M) 或十億位元組 (G)。

格式

LimitRequestBody max_body_size {K | M | G}

預設值

LimitRequestBody 10 M

LimitRequestFields -- 指定用戶端要求中的標頭數上限

您可以使用這個指引來指定可以在用戶端要求中傳送的標頭數上限。LimitRequest 指引係用來保護 Proxy 使其不受攻擊。

格式

LimitRequestFields number_headers 

預設值

LimitRequestFields 32

LimitRequestFieldSize -- 指定標頭長度和要求行上限

您可以使用這個指引來指定要求行的長度上限,以及要求中每一個標頭的長度上限。LimitRequest 指引係用來保護 Proxy 使其不受攻擊。

可將值指定成位元組 (B) 或千位元組 (K)。

格式

LimitRequestFieldSize max_hdr_length {B | K}

預設值

LimitRequestFieldSize 4096 B

ListenBacklog -- 指定伺服器要承載的接收待辦用戶端連線數目

使用這個指引,指定伺服器將連線拒絕的訊息傳送到用戶端之前, 所承載的接收待辦用戶端連線數目。這個數字根據伺服器在幾秒鐘內能夠處理的要求數量而定。 請勿將這個值設定為高於在用戶端逾時以及中斷連線之前伺服器可以處理的數目。

註:
如果 ListenBacklog 值大於 TCP/IP 支援的 SOMAXCONN 值,則將改用 SOMAXCONN 。

格式

ListenBacklog number_of_requests

預設值

ListenBacklog 128

LoadInlineImages -- 控制內含影像的重新整理

使用這個指引,指定快取代理程式是否應擷取列入影像。如果 LoadInlineImages 設為 on, 則內含在被快取的頁面的影像也會被快取。如果它設成 off,就不會快取內含影像。

格式

LoadInlineImages {on | off}

預設值

LoadInlineImages on

LoadTopCached -- 指定要重新整理的常用網頁數

使用這個指引指示快取代理程式,存取昨晚的快取存取日誌,並載入最常被要求的 URL。

Caching 指引必須設成 On,而且在已經為 LoadTopCached 指引設定值的情況下, 也必須為 CacheAccessLog 指引設定一個值。

格式

LoadTopCached number_of_pages

預設值

LoadTopCached 100

LoadURL -- 指定要重新整理的 URL

使用這個指引,指定快取代理程式要載入快取中的 URL。 多個 LoadURL 指引可以內含於配置檔,但無法使用萬用字元。

格式

LoadURL url

範例

LoadURL http://www.ibm.com/

預設值

Log -- 自訂「記錄」步驟

使用這個指引,指定伺服器執行「記錄」步驟時, 應呼叫的自訂應用程式函數。 這個程式碼提供日誌記載以及在關閉連線之後執行的其他處理程序。

格式

Log request_template /path/file:function_name
request_template
指定能進一步決定是否已呼叫您的應用程式函數之要求範本。在這個規格當中,可以包含通訊協定、網域及主機; 可以在前面加上斜線 (/),也可以用星號 (*) 當作萬用字元。例如, /front_page.htmlhttp://www.ics.raleigh.ibm.com/pub*/** 均有效。
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。您必須提供開啟、寫入及關閉函數的名稱。

範例

Log /index.html /api/bin/icsextpgm.so:log_url

預設值

LogArchive -- 指定日誌保存的行為

使用這個指引來指定保存常式的行為。 這個指引影響含有整體設定的所有日誌。 它指定壓縮或清除日誌或不變更日誌。

如果您指定 Compress,請使用 CompressAge 與 CompressDeleteAge 指引, 指出何時將壓縮或刪除日誌。您可以使用 CompressCommand 指引,指定將使用哪一個指令及其參數。

如果您指定 Purge,請使用 PurgeAge 與 PurgeSize 指引,指定何時將清除日誌。

格式

      LogArchive {Compress | Purge | none}
Compress
指定壓縮日誌的保存常式。
Purge
指定消除日誌的保存常式。
none
指定不採取任何動作的保存常式。

預設值

LogArchive Purge

相關指引

LogFileFormat -- 指定存取日誌格式

使用這個指引來指定存取日誌檔的檔案格式。

格式

LogFileFormat  {common | combined}

依預設,會以 NCSA Common Log Format 顯示日誌。指定 combined 即可改用 NCSA Combined Log Format 顯示日誌。合併格式會新增「正在參照的 URL」、「使用者代理程式」及 Cookie 的欄位(如果它們出現在要求中的話)。

預設值

LogFileFormat  common

LogToGUI(僅限 Windows)-- 在伺服器視窗顯示日誌項目

僅限 Windows 系統。 在透過指令行執行 Proxy 時,請使用這個指引輸出至存取日誌。為了使伺服器效能最佳化, 這個指引的預設值是設為 off(停用)。

註:
在將 Proxy 當成服務執行時,這個指引沒有作用。

格式

LogToGUI  {on | off}

預設值

LogToGUI off

LogToSyslog -- 指定是否傳送存取資訊給系統日誌(只限 Linux 和 UNIX)

只適用於 Linux 和 UNIX 系統。 使用這個指引來指定伺服器,除了將存取要求及錯誤記錄在存取以及錯誤日誌檔以外, 是否還要將它們記錄在系統日誌。

格式

LogToSyslog {on | off}

系統日誌檔必須出現在您的伺服器上, 您才可以指定將錯誤日誌資訊寫入其中。您可以選擇只記錄存取或錯誤資訊,或者兩者都記錄。

如果只要將錯誤資訊傳送到系統日誌,請在 /etc/syslog.conf 檔中新增下面這一行:

user.err syslog_output_file_for_error_information

如果只要將存取資訊傳送到系統日誌,請在 /etc/syslog.conf 檔中新增下面這一行:

user.info syslog_info_file_for_access_information

如果想同時將錯誤及存取資訊傳送到系統日誌, 請在 /etc/syslog.conf 檔中新增這兩行:

以下列格式指定 syslog_output_filesyslog_info_file

建立系統日誌檔後,可以用下述指令重新將它啟動:

kill -HUP 'cat /etc/syslog.pid'

預設值

LogToSyslog Off

Map -- 將符合的要求變更成新的要求字串

使用這個指引,為您要變更成新要求字串的要求, 設定一個範本。伺服器變更要求之後,會將新的要求字串, 與後續指引上的要求範本做比較。

格式

Map request_template new_request [server_IP_address | host_name]
request_template
指定您要伺服器變更的要求範本, 然後繼續將新要求字串與其他範本比較。

您可以在範本中使用星號 (*) 當作萬用字元。但是緊接在斜線 (/) 後面的鼻音字元 (~),必須確實符合; 不可以用萬用字元代替。

new_request
指定伺服器在後續指引上繼續用來比較要求範本的新要求字串。 如果 request_template 有一個萬用字元, 那麼使用 new_request 指定的字串可以包含該萬用字元。 要求中與 request_template 萬用字元相符的部分, 會被插入取代 new_request 中的萬用字元。
[server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。

您可以指定 IP 位址(例如,240.146.167.72), 也可以指定主機名稱(例如,hostA.raleigh.ibm.com)。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

不可對伺服器的 IP 位址指定萬用字元。

範例

預設值

MaxActiveThreads -- 指定作用中執行緒的最大數目

使用這個指引,設定您要同時處於作用狀態的執行緒數上限。 如果到達上限,伺服器會保留新的要求, 直到另一個要求完成,且釋出可用的執行緒為止。通常,機器的功能愈強大,這個指引的值就應該設得愈高。如果機器在處理經常作業(如交換記憶體)方面用掉太多時間,請縮減這個值。

格式

MaxActiveThreads number_of_threads

預設值

MaxActiveThreads 100

MaxContentLengthBuffer -- 指定存放動態資料的緩衝區大小

使用這個指引, 設定由伺服器產生的動態資料緩衝區大小。動態資料是來自 CGI 程式、伺服器端併入及 API 程式的輸出。

可將值指定成千位元組 (B)、千位元組 (K)、百萬位元組 (M) 或十億位元組 (G)。在數目與值(B、K、M、G)之間是否有空格都沒關係。

格式

MaxContentLengthBuffer size

預設值

MaxContentLengthBuffer 100 K

MaxLogFileSize -- 指定每一日誌檔的大小上限

您可以使用這個指引來指定每一日誌檔的大小上限。每一個日誌檔都不能超過這個指引所定義的大小。如果日誌檔到達定義的大小上限, 系統會關閉現行日誌檔,並以相同名稱之後附加下一個增量的整數值來建立一個新的日誌檔。

註:
  1. Caching Proxy 是個 32 位元的應用程式,它會以 32 位元函數來開啟其日誌檔。由於這個限制,請勿指定 MaxLogFileSize 大於 2 GB。如果日誌檔的大小超過 2 GB,當 Caching Proxy 在持續處理要求時嘗試寫入日誌檔,Caching Proxy 可能會當掉。
  2. 在 Linux 和 UNIX 平台中,如果日誌檔所在的目錄的許可權沒有至少是執行 ibmproxy 常駐程式之群組的寫入許可權,就不會建立日誌檔。 換句話說, ibmproxy.conf 檔中記載指引的日誌檔位置至少要具有對由 ibmproxy.conf 檔中 GroupId 指引所定義之群組的寫入許可權。如果日誌檔的預設位置已變更,或是 ibmproxy.conf 檔中預設的 UserId 或 GroupId 指引已變更,才會發生這個問題。

大小上限可以用下列其中一個單位來指定:位元組 (B)、KB (K)、MB (M) 和 GB (G)。

格式

MaxLogFileSize maximum {B | K | M | G}

預設值

MaxLogfileSize 128 M

MaxPersistRequest -- 指定持續性連線中要接收的要求數量上限

使用這個指引,指定伺服器在持續性的連線上, 應該接收的要求數目上限。 在指定這個數目時,請考慮網頁所用的影像數目。每個影像都需要個別的要求。

格式

MaxPersistRequest number

預設值

MaxPersistRequest 5

MaxQueueDepth -- 指定要置於佇列中的最大 URL 數目

使用這個指引, 指定存放未執行網頁擷取要求的快取代理程式佇列的最大深度。如果大型系統上具有大量的記憶體, 不妨定義一個大型的佇列來容納網頁擷取要求,而不會用盡所有可用記憶體。

存放要快取 URL 的佇列,是在每個快取代理程式開始執行時決定的。 如果您告訴快取代理程式跟隨超文字鏈結到其他的 URL, 這些其他的 URL 是不會有快取佇列深度的計數。達到 MaxURLs 指引所指定的值之後, 快取代理程式便會停止,即使佇列中還有其他 URL 也一樣。

格式

MaxQueueDepth maximum_depth

預設值

MaxQueueDepth 250

MaxRuntime -- 指定快取代理程式執行的時間量上限

使用這個指引, 指定快取代理程式在進行某項執行作業時,擷取 URL 的時間量上限。如果這個值為 0, 表示快取代理程式會執行到完成為止。

格式

MaxRuntime {0 | maximum_time} 

範例

MaxRuntime 2 hours 10 minutes

預設值

MaxRuntime 2 hours

MaxSocketPerServer -- 指定伺服器的最大開啟 Socket 數目

使用這個指引,為任何來源伺服器設定要維護的開啟 Socket 的最大數目。 唯有當 ServerConnPool 指引被設定為 on 時才能使用這個指引。

格式

MaxSocketPerServer num

範例

MaxSocketPerServer 10

預設值

MaxSocketPerServer 5

MaxUrls -- 指定要重新整理的最大 URL 數目

使用這個指引, 指定快取代理程式在進行某項執行作業時,將擷取的 URL 數量上限。如果這個值為 0, 表示沒有限制。當您使用自動模式的快取代理程式時,LoadURL 和 LoadTopCached 指引的執行優先順序要高於 MaxURLs。

格式

MaxURLs maximum_number

預設值

MaxURLs 2000

Member -- 指定這個陣列的成員

使用這個指引, 指定使用遠端快取存取的伺服器所共用的陣列成員。

註:
當設定陣列時,請在該陣列的所有成員上以相同方式配置 Hostname 指引。

格式

Member name {
subdirective
subdirective
.
.
}

包含下列副指引:

RCAAddr
這個必要副指引可以指出 RCA 通訊的 IP 位址及主機名稱。
RCAPort
這個必要副指引指出 RCA 通訊的埠。 這個連接埠號一定要大於 1024 且小於 65535。
CacheSize {n bytes | n Kbytes | n Mbytes | n Gbytes}
這個必要副指引指出這個成員的快取大小(這個值必須為正值)。
[Timeout n milliseconds | n seconds | n hours | n days | n months | n years | forever]
指出要等候這個成員多久。n 必須是正整數才行。Timeout 為選用性的值,其預設值是 1000 milliseconds。逾時值通常都是以秒或毫秒設定的。
[BindSpecific {On | Off}]
允許在專用子網路進行通訊,以提供一定的安全性。BindSpecific 是選用性的值;其預設值為 On
[ReuseAddr {On | Off}]
允許陣列更快速的重新組合; 如果這個值設為 On,表示允許其他處理程序竊用該埠, 這樣很可能會產生一些未定義的行為。ReuseAddr 是選用性的值;其預設值為 Off

範例

Member bittersweet.chocolate.ibm.com {
  RCAAddr      127.0.0.1
  RCAPort      6294
  CacheSize    25G
  Timeout      500 milliseconds
  BindSpecific On
  ReuseAddr    Off
  } 

預設值

Midnight -- 指定要用來保存日誌的 API 外掛程式

使用這個指引來指定要在午夜時執行,以保存日誌的應用程式外掛程式。在安裝期間將起始設定這個指引。 如果沒有將這個指引加入配置檔,就不會執行保存。

格式

Midnight /path/file:function_name
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

預設值

NameTrans -- 自訂「名稱轉換」步驟

這個指引來指定伺服器執行「名稱轉換」步驟時,應呼叫的自訂應用程式函數。 這個程式碼會提供機制,將要求中的虛擬路徑轉換成伺服器上的實體路徑, 把 URL 對映到特定的物件上。

註:
這不是終端機對映規則。 已轉換的 URL 仍須與其中一個終端機對映規則指引相符, 如 Exec、Fail、Map、Pass、Redirect 和 Service。

格式

NameTrans request_template /path/file:function_name 
  [Server_IP_address | host_name]
request_template
指定能進一步決定是否已呼叫應用程式函數之要求範本。在這個規格當中,可以包含通訊協定、網域及主機; 可以在前面加上斜線 (/),也可以用星號 (*) 當作萬用字元。例如,/front_page.htmlhttp://www.ics.raleigh.ibm.com/pub*/** 均有效。
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。
[Server_IP_address | host_name]
在您使用多個 IP 位址或虛擬主機時, 決定是否要呼叫您的應用程式函數, 但只對進入特定 IP 位址或特定主機的要求進行。

不可對伺服器的 IP 位址指定萬用字元。

註:
這個指引必須輸入在同一行上,雖然在這裡是為了方便閱讀而顯示成兩行。

範例

NameTrans /index.html /api/bin/icsextpgm.so:trans_url

預設值

NoBG -- 在前景中執行 Caching Proxy 程序

在 Linux 和 UNIX 平台中,請利用這個指引來防止在背景自動執行 Caching Proxy 伺服器程序。 依預設(設成 off),這個指引有下列格式:

NoBG [on | off]
註:
如果是 Windows 系統,ibmproxy 指令的 -nobg 選項無效。

範例

NoBG on

預設值

NoBG off

NoCaching -- 指定不快取那些含有符合範本的 URL 的檔案

使用這個指引, 指定伺服器不應快取其 URL 與指定範本相符的檔案。 這個指引可以在配置檔中重複使用。為每個範本包含一個個別的指引。URL 範本必須包含通訊協定在內。

如果 CacheOnly 或 NoCaching 指引都沒有設定, 那麼任何一個 URL 都可供快取。

格式

NoCaching URL_pattern

範例

NoCaching http://joke/*

預設值

NoLog -- 不顯示與範本相符的特定主機或網域的日誌項目

使用這個指引, 指定不要記錄由符合指定範本之特定主機或網域所提出的存取要求。 比方說,您可能不想記錄由區域主機提出的存取要求。

這個指引可以在配置檔中重複使用。您可以將數種範本放在同一個指引上(如果用空格加以區分)。範本上可以使用主機名稱或 IP 號碼位址。

註:
要使用主機名稱範本,必須將 DNS-Lookup 指引設定為 On。如果將 DNS-Lookup 指引設為 Off(預設值), 則只能使用 IP 位址範本。

格式

NoLog  {host_name | IP_address}  [...]

範例

NoLog 128.0.*  *.edu  localhost.*

預設值

no_proxy -- 直接連接到網域的範本

如果要使用指引 http_proxy、ftp_proxy 或 gopher_proxy 來鏈結 Proxy,那麼您可以使用這個指引來指定伺服器直接連接而不必透過 Proxy 的網域。

請指定該值為網域名稱或網域名稱範本的字串。 以逗點 (,) 來隔開字串中的每一個項目。 請在字串中使用任何空格。

在本指引上輸入範本的方式,與其他指引不同。 最重要的一點,是不可以使用萬用字元(*)。您可以只併入網域名稱的最後部分,來指定範本。伺服器是直接連接到以符合指定範本的字串為結尾的任何網域。這個指引只適用於 Proxy 鏈結, 而且相當於 SOCKS 配置檔中的直接 @/= 那一行。

格式

no_proxy  domain_name_or_template[,...]

範例

no_proxy   www.someco.com,.raleigh.ibm.com,.some.host.org:8080

在這個範例中,伺服器對於下列要求,是不會透過 Proxy 來處理的:

預設值

NoProxyHeader -- 指定要攔阻的用戶端標頭

使用這個指引,指定要攔阻的用戶端 URL 標頭。任何一個由用戶端傳送的 HTTP 標頭都可被攔阻, 包括必要的標頭在內。在攔阻標頭時,一定要特別小心。一般的標頭包括:

這些及其他標頭的詳細資訊,請參閱 HTTP 通訊協定規格。 您可以多次指定這個指引。

格式

NoProxyHeader header

範例

NoProxyHeader Referer:

預設值

NumClients -- 指定要使用的快取代理程式執行緒數目

使用這個指引, 指定快取代理程式用來擷取佇列中之網頁的執行緒數目。 請根據內部網路的速度以及與網際網路的連線情況, 來調整執行緒數目。其允許的範圍是 1 到 100。

註:
使用超過六個執行緒可能導致在內容伺服器上產生太快速的要求。

格式

NumClients number

預設值

NumClients 4

ObjectType -- 自訂「物件類型」步驟

這個指引可以指定伺服器執行「物件類型」步驟時, 應呼叫的自訂應用程式函數。這個程式碼會在檔案系統中找出要求的物件,並指定其 MIME 類型。

格式

ObjectType request_template /path/file:function_name
request_template
指定能進一步決定是否已呼叫您的應用程式函數之要求範本。在這個規格當中,可以包含通訊協定、網域及主機; 可以在前面加上斜線 (/),也可以用星號 (*) 當作萬用字元。例如, /front_page.htmlhttp://www.ics.raleigh.ibm.com/pub*/** 均有效。
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

ObjectType /index.html /api/bin/icsextpgm.so:obj_type

預設值

OutputTimeout -- 指定輸出逾時

使用這個指引,來設定伺服器傳送輸出到用戶端的時間上限。 該時間限制適用於對本端檔案的要求,以及伺服器作為 Proxy 運作時的要求。該時間限制不適用於啟動區域 CGI 程式的要求。

如果伺服器在這個指引所指定的時間限制內未傳送完整的回應, 則伺服器會停止連線。您可以用小時、分鐘(或 mins)及秒鐘 (secs) 的任何組合指定時間值。

格式

OutputTimeout time 

預設值

OutputTimeout 30 minutes

PacFilePath -- 指定含有 PAC 檔的目錄

使用這個指引,指定含有 Proxy 自動配置檔的目錄, 這些檔案係使用遠端配置 PAC 檔格式所產生的。

格式

PacFilePath directory_path

預設值

Pass -- 指定接受要求的範本

對於要接受並以來自伺服器的檔案來回應的要求,使用這個指引來指定其範本。 在要求符合 Pass 指引上的範本之後, 該要求便不會與任何後續指引上的要求範本再做比較。

格式

Pass  request_template [file_path [server_IP_address | host_name]]
request_template
是指您要伺服器所要接受並以檔案來回應的要求,所用的一個範本。

您可以在範本中使用星號 (*) 當作萬用字元。但是緊接在斜線 (/) 後面的鼻音字元 (~),必須確實符合; 不可以用萬用字元代替。

[file_path]
指定伺服器要傳回的檔案的路徑。如果 request_template 有萬用字元,file_path 也可能有。要求中與 request_template 萬用字元相符的部分, 會被插入取代 file_path 中的萬用字元。

這個參數是選用性參數。如果沒有指定路徑,就採用要求本身當作路徑。

[server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。

您可以指定 IP 位址(例如,240.146.167.72), 也可以指定主機名稱(例如,hostA.raleigh.ibm.com)。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

不可對伺服器的 IP 位址指定萬用字元。

範例

預設值

PersistTimeout -- 指定用戶端傳送另一個要求的等待時間

請使用這個指引,來指定用戶端提出要求之間,伺服器應該等待的時間長度, 超過這個時間後,伺服器即取消持續性連線。 時間可以是任何有效的時間增量,但通常是以秒鐘或分鐘為單位。

伺服器會使用另一種逾時指引(即 InputTimeout)決定在用戶端建立連線之後, 要等待多久才傳送第一個要求。輸入逾時的進一步資訊,請參閱InputTimeout -- 指定輸入逾時

在伺服器傳送其第一個回應之後,該伺服器會在取消持續性連線之前, 使用 PersistTimeout 設定值來決定等待每個後續要求的時間。

格式

PersistTimeout  time

預設值

PersistTimeout 4 seconds

PICSDBLookup -- 自訂 PICS 標籤擷取步驟

使用這個指引來指定要擷取特定 URL 的 PICS 標籤時, 伺服器應呼叫的自訂應用程式函數。 函數可以動態建立要求檔案的 PICS 標籤, 或在另一檔案或資料庫中搜尋 PICS 標籤。

格式

PICSDBLookup  /path/file:function_name
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

PICSDBLookup  /api/bin/icsext05.so:get_pics

預設值

PidFile(只適用於 Linux 和 UNIX)-- 指定用來儲存 Caching Proxy 之程序 ID 的檔案

只適用於 Linux 和 UNIX。 使用這個指引來指定含有 Caching Proxy 的程序 ID 的檔案位置。當伺服器程序啟動時,它將把它的程序 ID (PID) 記錄在檔案中。 如果在單一系統上執行多個伺服器實例,則每一實例均應具有它自己的 PidFile 指引。

格式

PidFile path_to_pid_file_info

範例

PidFile /usr/pidinfo

預設值

外掛程式模組指引

已將以下所列出的指引新增到 Caching Proxy ibmproxy.conf 檔來啟用新特性和外掛程式。無法使用「配置與管理」表單編輯大部分的這些指引。必須使用標準文字編輯程式(例如 vi 或 emacs)手動編輯它們。本章按字母順序提供關於這些新指引的進一步資訊。

在 ibmproxy.conf 檔,必須使用下列格式輸入用來配置 Caching Proxy 外掛程式模組的指引:

<MODULEBEGIN> plugin name
subdirective1
subdirective2

<MODULEEND>

每一個外掛程式都會剖析 ibmproxy.conf 檔,且只讀取它自己的副指引區塊。Caching Proxy 剖析器不處理介於 <MODULEBEGIN><MODULEEND> 之間的所有內容。

Caching Proxy 外掛程式模組和部分新特性需要將 API 指引新增到 ibmproxy.conf 檔。 因為 Proxy 伺服器是按照列示外掛程式模組的順序來與這些模組互動, 所以在排序 Proxy 配置檔內的指引時要小心。已將原型指引(以備註形式)新增到 ibmproxy.conf 檔的 API 區段。這些 API 指引是按照目的排序。 當新增 API 指引來啟用新特性及外掛程式模組時,依照配置檔原型段落中顯示的順序來排序指引。 另外,必要時取消備註與編輯 API 指引,以包含每一個預期功能或外掛程式的支援。在那些隨產品提供的模組後面會新增使用者產生的外掛程式模組。

Port -- 指定伺服器用來接收要求的埠

使用這個指引,指定伺服器用來接收要求的埠號。HTTP 的標準埠號碼為 80。 其他小於 1024 的埠號,則是保留給其他的 TCP/IP 應用程式使用, 您不可以使用。Proxy Web 伺服器所用的埠一般是 8080 與 8008。

如果使用的不是 80 的埠時, 那麼當用戶端對伺服器提出要求時, 必須併入一個特定的埠號。埠號之前要加上一個冒號 (:),並放置在 URL 上主機名稱之後。 例如,瀏覽器的 URL http://www.turfco.com:8008/ 要求一個名為 www.turfco.com 的主機(在埠 8008 上接收)之預設歡迎頁面。

啟動伺服器之後,您可以在 ibmproxy 指令上使用 -p 選項來置換這個設定。

格式

Port number

如果您變更了這個指引,則必須先手動停止伺服器, 然後再重新啟動,這樣才能使變更生效。如果只是重新啟動伺服器的話, 伺服器將不會辨識變更。 (請參閱啟動與停止 Caching Proxy。)

預設值

Port 80

PostAuth -- 自訂 PostAuth 步驟

使用這個指引來指定在進行 PostAuth 步驟的期間, 伺服器所呼叫的自訂之應用程式函數。不管從先前的步驟或其他 PostAuth 處理常式傳回何種回覆碼,都會執行本程式碼。它可讓您清除配置來處理要求的資源。

格式

PostAuth  /path/file:function_name
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

AuthExit  /ics/api/bin/icsext05.so:post_exit

預設值

PostExit -- 自訂 PostExit 步驟

這個指引可以指定伺服器執行 PostExit 步驟時, 應呼叫的自訂應用程式函數。不管從先前的步驟或其他 PostExit 處理常式傳回什麼回覆碼,都會執行本程式碼。它可讓您清除配置來處理要求的資源。

格式

PostExit  /path/file:function_name
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

PostExit  /ics/api/bin/icsext05.so:post_exit

預設值

PreExit -- 自訂 PreExit 步驟

這個指引可以指定伺服器執行 PreExit 步驟時, 應呼叫的自訂應用程式函數。這個程式碼會在用戶端要求被讀取之後、以及進行其他程序之前執行。您可以在進行這個步驟時,呼叫 GoServe 模組。

格式

PreExit /path/file:function_name
/path/file
指定經過編譯 DLL 的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

PreExit  /ics/api/bin/icsext05.so:pre_exit

預設值

Protect -- 啟動符合範本之要求的保護設定

使用這個指引來啟動保護設定規則,供符合範本的要求使用。

註:
如果要正確地發揮保護作用,則必須在配置檔中將 DefProt 和 Protect 指引放在任何 Pass、Exec 或 Proxy 指引之前。

保護設定是以保護副指引來定義的。Protect 指引的格式是根據您要指向含有保護副指引的標籤或檔案, 還是您要併入保護副指引作為 Protect 指引列入的一部分而定。

格式

這個參數可使用下列格式:

使用下列參數:

request_template
指定要啟動保護的要求範本。 伺服器會將送入的用戶端要求與範本做比較,如果符合,則會啟動保護。
[setup_file | label]
如果您指向一個含有保護副指引的標籤或檔案,這個參數會指定接收到與 request_template 相符的要求時, 啟動保護設定。

這個參數是選用性參數。如果省略該參數, 則保護設定是由包含相符範本的最新 DefProt 指引來定義。

[FOR server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。如果您保護一個 IP 位址, 會保護 IP 位址與完整定義的主機名稱。然而,如果是使用名稱而非完整的主機名稱(例如,使用主機名稱檔案中的項目)從伺服器的網路內呼叫伺服器,則不會保護它。

範例:

Protect http://x.x.x.x  PROT-ADMIN

在 Web 瀏覽器內:

範例:

Protect http://hostname.example.com  PROT-ADMIN

在 Web 瀏覽器內:

您可指定 IP 位址(例如,FOR 240.146.167.72)或者指定主機名稱(例如,FOR hostA.bcd.com)。

萬用字元不可以用來指定伺服器 IP 位址。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

註:
[server_IP_address | host_name] 參數搭配 [setup_file | label] 參數或 subdirective value 參數使用。
  • 如果要使用 [server_IP_address | host_name][setup_file | label],您必須將 FOR, 或是其他字串(中間不加空格)放在 [setup_file | label] 參數與 [server_IP_address | host_name] 參數之間。
  • 如果要使用 [server_IP_address | host_name] 與 subdirective value 參數,請FOR 放在 IP_addresshost_name 之前。
subdirective value
如果要併入保護副指引作為 Protect 指引的一部分,請使用這個參數。 保護副指引的說明,請參閱下列各節:

範例

預設值

依預設,「管理與配置」表單的保護是由含有 /admin-bin/* 要求範本的 Protect 指引所提供。

Protection -- 定義配置檔中已指名的保護設定

使用這個指引,在配置檔內定義保護設定。 您必須提供一個名稱給保護設定,並利用保護副指引來定義保護的類型。

註:
  1. 在配置檔內,請將 Protection 指引放在任何指向它們的 DefProt 或 Protect 指引之前。
  2. 要在保護規則中使用網域名稱,必須將 DNS-Lookup 指引設定為 on

格式

Protection label_name  {
    subdirective  value
    subdirective  value
    .
    .
    .
  }
label_name
指定這個保護設定連結的名稱。 後續的 DefProt 與 Protect 指引即可使用該名稱,來指向這個保護設定。
subdirective value
以大括弧 ({ }) 括住副指引。左括弧字元必須與 label_name 位於同一行上的最後一個字元。每個副指引在本身那一行都是依序排列。右括弧字元必須在它自己的那一行, 且跟在最後一個副指引行後面。在大括弧之間不可出現任何備註行。

保護副指引的說明,請參閱保護副指引 -- 指定資源組的保護方式

範例

Protection NAME-ME   {
        AuthType Basic
  ServerID restricted
   PasswdFile  /WWW/password.pwd
   GroupFile   /WWW/group.grp
   GetMask groupname
   PutMask groupname
}

預設值

Protect /admin-bin/* {
  ServerId     Private_Authorization
        AuthType Basic
GetMask  All@(*)
  PutMask      All@(*)
  PostMask     All@(*)
        Mask All@(*)
  PasswdFile   /opt/ibm/edge/cp/server_root/protect/webadmin.passwd
}

保護副指引 -- 指定資源組的保護方式

下面將說明保護設定中,可以使用的保護副指引。副指引是以英文字母順序排列。

保護設定可以在個別的檔案中或併入配置檔內, 作為 DefProt、Protect 或 Protection 指引的一部分。

AuthType -- 指定鑑別類型

根據使用者名稱及密碼限制存取時,使用這個 Protection 副指引。 設定鑑別的類型, 以便在用戶端傳送密碼給伺服器時可以使用。如果是基本鑑別 (AuthType Basic), 則密碼是以純文字的格式傳送至伺服器。 這些密碼會加以編碼,但不會加密。

預設值
        AuthType Basic

DeleteMask -- 指定可刪除檔案的使用者名稱、群組及位址

使用這個 Protection 副指引,指定使用者名稱、群組及位址範本(有權對受保護的目錄提出 DELETE 要求)。

範例
DeleteMask authors,(niceguy,goodie)@45.96.3.1,128.0.*.*

GetMask -- 指定可取得檔案的使用者名稱、群組及位址

使用這個 Protection 副指引,指定使用者名稱、群組及位址範本(有權對受保護的目錄提出 GET 要求)。

範例
GetMask authors,(niceguy,goodie)@45.96.3.1,128.0.*.*
預設值
GetMask  All@(*)

GroupFile -- 指定相關群組檔案的位置

使用這個 Protection 副指引,指定這個保護設定使用的伺服器群組檔案的路徑及檔案名稱。 然後,伺服器群組檔案內所定義的群組可供下列項目使用:

範例
GroupFile /docs/etc/WWW/restrict.group

Mask -- 指定可以發出 HTTP 要求的使用者名稱、群組及位址

使用這個副指引, 指定使用者名稱、群組及位址範本(有權發出其他 mask 副指引未涵蓋之 HTTP 要求)。

範例
Mask authors,(niceguy,goodie)@45.96.3.1,128.0.*.*
註:
當您使用 Mask 指引時,要記住 Mask 是有大小寫區分的。下例示範如何對使用者 ID 發出 Mask 保護:
MASK WEBADM,webadm

PasswdFile -- 指定相關密碼檔案的位置

根據使用者名稱及密碼限制存取時,使用這個 Protection 副指引。 請指定這個保護設定所使用的密碼檔案的路徑與名稱。

因為有些瀏覽器會依主機內的安全網域 (ServerID) 來快取使用者 ID 和密碼,因此,在指定 ServerID 和密碼檔案時,請遵循下列指示:

範例
PasswdFile /docs/etc/WWW/restrict.password
註:
如果密碼檔的路徑或檔案名稱內含空格,則必須以雙引號 ("") 括住完整的路徑及檔案名稱。
PasswdFile "c:\test this\admin.pwd"

PostMask -- 指定可傳遞檔案的使用者名稱、群組及位址

就安全伺服器而言,使用這個 Protection 副指引來指定使用者、群組及位址範本(有權對受保護的目錄提出 POST 要求)。

範例
PostMask authors,(niceguy,goodie)@45.96.3.1,128.0.*.*

PutMask -- 指定可存放檔案的使用者名稱、群組及位址

使用這個 Protection 副指引來指定使用者、群組及位址範本(有權對受保護的目錄提出 PUT 要求)。

範例
PutMask authors,(niceguy,goodie)@45.96.3.1,128.0.*.*

ServerID -- 指定與密碼檔案相關的名稱

根據使用者名稱及密碼限制存取時,使用這個 Protection 副指引。 指定您希望與所用的密碼檔案相關的名稱。這個名稱不必是真正的機器名稱。

該名稱是作為要求者的識別碼使用。因為不同的保護設定可以使用不同的密碼檔案, 所以將名稱與保護設定相關聯,可幫助用戶端決定要傳送哪一個密碼。大多數用戶端在提示使用者輸入名稱與密碼時,會顯示這個名稱。

因為有些瀏覽器會依主機內的安全網域 (ServerID) 來快取使用者 ID 和密碼,因此,在指定 ServerID 和密碼檔案時,請遵循下列指示:

範例
ServerID restricted

Proxy -- 指定 Proxy 通訊協定或反向 Proxy

請利用這個指引來指出 Caching Proxy 將處理哪些通訊協定,以及將要求對映至伺服器。 有效的通訊協定有 httpftpgopher

如果用戶端發出的要求轉遞至相同伺服器,且是來自相同的用戶端 TCP 通道,Proxy 指引的 UseSession 參數選項可協助您維護伺服器端的持續性通道。UseSession 會置換 ServerConnPool 指引,可讓不同用戶端發出的要求共用後端伺服器的持續性連線。

Proxy 指引的 JunctionPrefix 參數選項用來結合接合重新撰寫外掛程式。如果需要詳細資訊,請參閱啟用接合重新撰寫(選用)定義含 JunctionPrefix 選項的接合(建議的方法)

格式

Proxy request_template target_server_path [[ip]:port]
      [UseSession] [JunctionPrefix:url_prefix]

這個指引會將要求傳給遠端伺服器。 例如,下列的指引將使得所有要求轉送到指定的 URL:

Proxy /*   http://proxy.server.name/* 

就安全反向 Proxy 伺服器而言,請使用下列指引:

Proxy /*  https://proxy.server.name/*

如果您要 Proxy 伺服器比較不受限制,請解除註銷配置檔中的下列指引。(不過,當 Proxy 配置成反轉 Proxy 時, 這些指引可能會產生安全問題。)

Proxy http:*
Proxy ftp:*
Proxy gopher:*

以下是 Proxy 指引的 UseSession 選項範例:

Proxy  /abc/*   http://server1/default/abc/*  :80  UseSession

當送入的用戶端要求是來自 80 埠時,如果用戶端要求的 URL 符合 /abc/* 型樣,就會將這個 URL 對映至 http://server1/default/abc/* 。

以下是 Proxy 指引的 JunctionPrefix 選項格式:

Proxy url_patern1 url_pattern2 JunctionPrefix:url_prefix

如果需要如何使用 JunctionPrefix 參數選項的詳細資訊,請參閱啟用接合重新撰寫(選用)定義含 JunctionPrefix 選項的接合(建議的方法)

預設值

無。

ProxyAccessLog -- 為 Proxy 存取日誌檔的路徑命名

使用這個指引,指定伺服器記錄 Proxy 要求的存取統計值所用的路徑與檔名。 依預設,每次伺服器因用戶端要求而充當 Proxy 時, 伺服器會寫入項目至這個日誌中。如果您不想記錄來自特定用戶端的要求,則可以使用 NoLog 指引。

如果伺服器正在執行,那麼它會在每日午夜啟動新的日誌檔。 否則,伺服器會在任意日的第一次啟動時, 啟動一個新的日誌檔。在建立該檔時,伺服器會使用您所指定的檔名, 並附加日期字尾或副檔名。日期字尾或副檔名的格式為 Mmmddyyyy, 其中 Mmm 是指月份的前三個字母; dd 是指月份之內的日期;而 yyyy 是指年份。

舊的日誌檔太佔硬碟空間了,最好將它們移除。

格式

ProxyAccessLog path/file

預設值

ProxyAdvisor -- 自訂 Proxy 要求的服務

使用這個指引,指定伺服器執行 Proxy Advisor 步驟時, 應呼叫的自訂應用程式。這個程式碼會替要求提供服務。

格式

ProxyAdvisor /path/file:function_name					
/path/file
指定經過編譯之程式的完整檔名。
function_name
指定程式中應用程式函數的名稱。
範例
ProxyAdvisor /api/bin/customadvise.so:proxyadv

預設值

ProxyForwardLabels -- 指定 PICS 過濾功能

使用 ProxyForwardLabels 指引, 在 Proxy 伺服器及用戶端,或者在 Proxy 階層的兩個 Proxy 上, 指定 PICS 過濾功能。

如果將 ProxyForwardLabels 設定為 on,Proxy 伺服器就會為所有找到的 PICS 標籤(包括來自來源伺服器、標籤櫃、Caching Proxy 的標籤快取及標籤供應商外掛程式的標籤)產生 PICS-Label: HTTP 標頭。

如果將 ProxyForwardLabels 設定為 Off, 就不會產生 PICS-Label: HTTP 標頭。

格式

ProxyForwardLabels {On | Off}

預設值

ProxyForwardLabels Off

ProxyFrom -- 使用 From: 標頭來指定用戶端

使用這個指引產生 From: 標頭。 通常這個標頭是用來提供 Proxy 管理者的電子郵件位址。

格式

ProxyFrom e-mail_address

範例

設定 ProxyFrom webmaster@proxy.ibm.com 會在標頭方面產生下述變更:

原始標頭 修改後的標頭
Location: http://www.ibm.com/ Location: http://www.ibm.com/
Last Modified: Tue 5 Nov 1997 10:05:39 GMT Last Modified: Tue 5 Nov 1997 10:05:39 GMT
Pragma: no-cache From: webmaster@proxy.ibm.com
Pragma: no-cache

預設值

ProxyIgnoreNoCache -- 略過重新載入要求

使用這個指引來指定當使用者按一下瀏覽器上的重新載入時,伺服器如何反應。 如果 ProxyIgnoreNoCache 指引設為 on, 則伺服器在高載入的時段,不會向目的地伺服器要求該網頁, 而是提供快取的檔案複本(如果有的話)。伺服器根本不理會瀏覽器所傳送的 Pragma: no-cache 標頭。

格式

ProxyIgnoreNoCache  {on | off}

預設值

ProxyIgnoreNoCache off

ProxyPersistence -- 允許持續性連線

使用這個指引來指定是否要維護用戶端的持續性連線。持續性連線可以縮減使用者的等待時間, 並縮減 Proxy 伺服器的 CPU 負荷,但卻需要更多資源。不過這樣一來,持續性連線也必須用到較多的執行緒, 以及 Proxy 伺服器上更多的記憶體。

如果有任何 Proxy 與 HTTP 1.1 不相容,就不可以在多層次 Proxy 伺服器設定中使用持續性連線。

格式

ProxyPersistence {on | off}

預設值

ProxyPersistence on

ProxySendClientAddress -- 產生 Client-IP: 標頭

使用這個指引, 指定 Proxy 是否將用戶端的 IP 位址轉送給目的地伺服器。

格式

ProxySendClientAddress  {Client_IP: | OFF} 

範例

指引 ProxySendClientAddress Client-IP: 會在標頭方面產生下述變更:

原始標頭 修改後的標頭
Location: http://www.ibm.com/ Location: http://www.ibm.com
Last Modified: Tue 5 Nov 1997 10:05:39 GMT Last Modified: Tue 5 Nov 1997 10:05:39 GMT
Pragma: no-cache Client-IP: 0.67.199.5
Pragma: no-cache

預設值

ProxyUserAgent -- 修改 User Agent 字串

使用這個指引來指定 User Agent 字串,來取代用戶端傳送的字串。 這樣一來就更能夠使用匿名來造訪網站。不過, 有些網站有根據 User Agent 字串所自訂的網頁。 使用 ProxyUserAgent 指引可防止這些自訂頁面顯示出來。

格式

ProxyUserAgent product_name/version

範例

指引 ProxyUserAgent Caching Proxy/6.0 會在標頭方面產生下述變更:

原始標頭 修改後的標頭
Location: http://www.ibm.com/ Location: http://www.ibm.com
Last Modified: Tue 5 Nov 1997 10:05:39 GMT Last Modified: Tue 5 Nov 1997 10:05:39 GMT
User Agent: Mozilla/ 2.02 OS2 User Agent: Caching Proxy/6.0
Pragma: no-cache Pragma: no-cache

預設值

ProxyVia -- 指定 HTTP 標頭的格式

使用這個指引控制 HTTP 標頭的格式。這個指引有四個值。如果將 ProxyVia 設定為 Full,Caching Proxy 會將 Via 標頭新增到要求或回應中;如果串流中已經有 Via 標頭,Caching Proxy 會在尾端新增主機資訊。 如果設定為 Set,Caching Proxy 會將 Via 標頭設定為主機資訊; 如果串流中已經有 Via 標頭,Caching Proxy 會移除它。如果設定為 Pass,Caching Proxy 會原封不動地轉送任何標頭資訊。如果設定為 Block, Caching Proxy 不會轉送任何 Via 標頭。

格式

ProxyVia {Full | Set | Pass | Block}

範例

ProxyVia Pass

預設值

ProxyVia Full

ProxyWAS -- 指定要求傳給 WebSphere Application Server

ProxyWAS 對映指引的功能與 Proxy 指引相同,但它另外會指示 Caching Proxy,符合規則的要求已導向 WebSphere Application Server。 如果需要這個指引的使用範例,請參閱Proxy -- 指定 Proxy 通訊協定或反向 Proxy

格式

ProxyWAS request_template target_server_path [UseSession] 
         [JunctionPrefix:url_prefix]

預設值

PureProxy -- 停用專用的 Proxy

使用這個指引, 指定伺服器是要充當 Proxy 伺服器,還是充當 Proxy 及內容伺服器使用。建議使用 Caching Proxy 只作為 Proxy。

格式

PureProxy {on | off}

預設值

PureProxy on

PurgeAge -- 指定日誌的年限

使用這個指引以日數為單位,指定在清除日誌之前的經歷時間。 如果 PurgeAge 設為 0,則日誌永遠都不會刪除。

註:
這個外掛程式不會刪除今天或前一天的日誌。

格式

PurgeAge number

預設值

PurgeAge 7

相關指引

PurgeSize -- 指定日誌保存檔的大小限制

使用這個指引來指定清除日誌檔之前,日誌檔可以擴充的空間(以百萬位元組 (MB) 為單位)。 如果 PurgeSize 指引設成 0,就沒有大小限制而且不會刪除檔案。

PurgeSize 的設定參照某日誌類型的所有日誌。 比方說,如果您正在記錄一些錯誤(即在配置檔中已經產生一個 ErrorLog 項目), 而且 PurgeSize 被定義為 10 MB,Caching Proxy 會計算全部錯誤日誌的大小並將它們加總起來, 然後開始刪除日誌直到總大小小於 10 MB 為止。

註:
這個外掛程式不會刪除今天或前一天的日誌。在刪除日誌檔時, 會從最舊的日誌開始刪除,直到每個日誌類型的日誌檔大小, 小於或等於 PurgeSize 所定義的值(以百萬位元組計)為止。

格式

PurgeSize number_of_MB

預設值

PurgeSize 0

相關指引

RCAConfigFile -- 指定 ConfigFile 的別名

使用這個指引,指定「遠端快取存取」配置檔的名稱及位置。

註:
RCA 配置檔已合併到 ibmproxy.conf 檔。為了舊版相容性, 支援 RCAConfigFile 作為 ConfigFile 的別名。

格式

RCAConfigFile /etc/file_name

範例

RCAConfigFile /etc/user2rca.conf

預設值

RCAConfigFile /etc/rca.conf

RCAThreads -- 指定每個埠的執行緒數目

使用這個指引,指定 RCA 埠上所使用的執行緒數目。

格式

RCAThreads number_of_threads

範例

RCAThreads 50

預設值

MaxActiveThreads x [(ArraySize -1) / (2 x ArraySize -1)]

ReadTimeout -- 指定連線的時間限制

使用這個指引,指定在取消連線之前,沒有網路活動所容許的時間限制。

格式

ReadTimeout time

預設值

ReadTimeout 5 minutes

Redirect -- 指定傳給另一個伺服器的要求範本

對於您要接受且傳送至另一部伺服器的要求,您可以使用這個指引來指定一個範本。要求符合 Redirect 指引上的範本時,該要求不會與您配置檔中其他指引上的範本做比較。

格式

Redirect request_template URL  [server_IP_address | host_name]
request_template
指定讓您的伺服器將要求傳送至另一部伺服器所用的範本。

您可以在範本中使用星號 (*) 當作萬用字元。但是緊接在斜線 (/) 後面的鼻音字元 (~),必須確實符合; 不可以用萬用字元代替。

URL
指定伺服器傳給另一個伺服器的 URL 要求。對這個要求的回應會送回原始的要求者,但不會指出該回應並非來自您的伺服器。

URL必須含有通訊協定規格, 以及傳送要求所到達的伺服器名稱。也可以包含路徑或檔名。 如果 request_template 使用萬用字元, 則 URL 上的路徑或檔名也可以使用萬用字元。 原始要求中與 request_template 中萬用字元相符的部分, 會被插入取代 URL 中的萬用字元。

[server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。

您可以指定 IP 位址(例如,240.146.167.72)或指定主機名稱(例如,hostA.bcd.com)。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

不可對伺服器的 IP 位址指定萬用字元。

範例

預設值

ReversePass -- 截取自動重新導向的要求

ReversePass 對映指引可檢查伺服器回應串流,以偵測那些以自動重新導向的結果來重新撰寫的要求。 一般來說,當伺服器傳回屬於 3xx 類別(例如,301,永久移動,或 303,請參閱其他)的 HTTP 字碼時,伺服器會傳送含有回應的訊息,該回應會指示要求的用戶端將未來的要求導向至正確的 URL 和 IP 位址。在反向 Proxy 設定的案例中,來自來源伺服器的重新導向訊息可以使用戶端瀏覽器在後續要求中略過 Proxy 伺服器。 如果要避免用戶端直接聯繫來源伺服器,請使用 ReversePass 指引來截取特別針對來源伺服器提出的要求。

不像其他處理要求串流的對映指引一般,ReversePass 會比較其範本與回應串流。回應串流是 Proxy 伺服器從來源伺服器取得並傳送至用戶端的回應。

格式

ReversePass rewritten_URL proxy_URL [host:port]

host:port 選項可讓 Proxy 根據後端伺服器主機名稱和埠來套用不同的 ReversePass 規則。

範例

註:
在萬用字元 (*) 之前的 proxy_URL 型樣內容必須完全符合後端伺服器在位置標頭中傳送的內容,否則,指引會失敗。

預設值

RewriteSetCookieDomain -- 指定需要重新撰寫的網域型樣

請利用這個指引來指定需要重新撰寫的網域型樣。 這個指引會將網域從 domain_pattern1 轉換成 domain_pattern2

格式

RewriteSetCookieDomain domain_pattern1 domain_pattern2

範例

RewriteSetCookieDomain .internal.com .external.com

預設值

相關指引

RTSPEnable -- 啟用 RTSP 重新導向

這個指引啟用或停用 RTSP 重新導向。選項有 onoff

格式

RTSPEnable {on | off}

範例

RTSPEnable  on

預設值

rtsp_proxy_server - 指定重新導向的伺服器

這個指引用於指定 RTSP Proxy 伺服器接收重新導向的要求。 可針對不同的串流類型來指定不同的伺服器。 本指引的格式如下:

rtsp_proxy_server server dns address[:port] default rank [list of mime types]

範例

rtsp_proxy_server    rproxy.mycompany.com:554     1
rtsp_proxy_server    fw1.mycompany.com:554        2
rtsp_proxy_server    fw1.mycompany.com:555        3
rtsp_proxy_server    fw2.mycompany.com:557        4

預設值

rtsp_proxy_threshold -- 指定重新導向到快取記憶體之前的要求數目

這個指引指定 RTSP 要求被重新導向至 Proxy 伺服器(而非來源伺服器)之前要接收的要求數目。RealNetworks Proxy 快取第一個要求的串流,一開始快取時需要加倍接收串流的頻寬。 指定大於 1 的臨界值,防止僅執行一次的要求被快取。 本指引的格式如下:

rtsp_proxy_threshold number_of_hits

範例

rtsp_proxy_threshold 5

預設值

rtsp_url_list_size -- 指定 Proxy 記憶體中的 URL 數目

這個指引指定保存於記憶體中供重新導向的唯一 URL 數目。Proxy 參照這份清單來判斷給定的 URL 是否曾在之前出現過。 清單大小越大,便可增進 Proxy 伺服器的能力,以將後續要求傳送給接收前一個要求的相同 Proxy 伺服器,但每一個清單項目大約會用掉 16 個位元組的記憶體。

格式

rtsp_url_list_size size_of_list

範例

rtsp_url_list_size 8192

預設值

ScriptTimeout - 指定 Script 的逾時設定

使用這個指引,設定伺服器所啟動的 CGI 程式,要花多少時間完成。時間一到,伺服器就會結束該程式。在 Linux 和 UNIX 平台中,這是利用 KILL 信號來完成的。

請使用小時、分鐘(或 mins)及秒鐘(或 secs)的組合,來輸入時間值。

格式

ScriptTimeout timeout

預設值

ScriptTimeout 5 minutes

SendHTTP10Outbound -- 為 Proxy 要求指定通訊協定版本

使用這個指引來指定從 Caching Proxy 傳給下游伺服器的要求會使用 HTTP 1.0 版通訊協定。 (下游伺服器是 Proxy 鏈結中的另一個 Proxy 伺服器, 或是會處理要求的來源伺服器。)

如果使用這個指引,Caching Proxy 就會把 HTTP 1.0 當成要求行中的通訊協定。只有 HTTP 1.0 特定的功能, 及大部分 HTTP 1.1 伺服器支援的某些 HTTP 1.0 功能(如快取控制標頭), 會被送到下游伺服器。如果有一個下游伺服器未正確處理 HTTP 1.1 要求, 請使用這個指引。

如果指定 SendHTTP10Outbound 指引,Caching Proxy 就會把 HTTP 1.1 當成要求行中的通訊協定。HTTP 1.1 功能(例如,持續性連線)也可以在要求中使用。

格式

SendHTTP10Outbound url_pattern

範例

這個指引可以多次指定,例如:

SendHTTP10Outbound http://www.hosta.com/*
SendHTTP10Outbound http://www.hostb.com/*

為提供舊版相容性,先前語法 SendHTTP10Outbound 以下列的方式處理:

註:
如果指定 SendHTTP10Outbound offSendHTTP10Outbound url_pattern, 就會忽略 SendHTTP10Outbound off,但會發出警告訊息。

預設值

SendRevProxyName -- 在 HOST 標頭指定 Caching Proxy 主機名稱

作為反向 Proxy 時,Caching Proxy 接收來自用戶端的 HTTP 要求並將要求傳給來源伺服器。依預設,Caching Proxy 在它傳給來源伺服器的要求的 HOST 標頭中會寫入來源伺服器的主機名稱。如果 SendRevProxyName 指引設成 yes,Caching Proxy 會在 HOST 標頭寫入自己的主機名稱。可以使用這個指引啟用後端伺服器的特殊配置,因為它可讓來源伺服器的要求看起來永遠來自 Proxy 伺服器,即使在從一個後端伺服器重新導向要求到另一個伺服器的狀況下也是一樣。

這個指引與 ReversePass 對映指引有下列差異: ReversePass 指引會截取含有指定語法的要求並替代成您指定的不同要求內容。 只能設定 SendRevProxyName 指引以 Caching Proxy 主機名稱替代來源伺服器主機名稱。這個指引在配置 Application Service at the Edge 方面不太有用。

格式

SendRevProxyName  {yes | no}

ServerConnGCRun -- 指定執行記憶體回收執行緒的間隔

這個指引設定記憶體回收執行緒檢查逾時的伺服器連線的間隔(搭配 ServerConnTimeout 指引一起設定)。 唯有當 ServerConnPool 指引被設定為 on 時才能使用這個指引。

格式

ServerConnGCRun time_interval

範例

ServerConnGCRun 2 minutes

預設值

ServerConnGCRun 2 minutes

ServerConnPool -- 指定來源伺服器的連線共用

這個指引可讓 Proxy 儲存它與來源伺服器的送出連線。 將這個指引設定為 on 能增強效能,並且更能利用允許持續性連線的來源伺服器。 經由 ServerConnTimeout 指引,您也可以指定維持未用的連線之時間。

註:
最好能在受控制環境下啟用這個指引; 在轉送 Proxy 狀況或來源伺服器不是 HTTP 1.1 相容的狀況下,它會降低效能。

格式

ServerConnPool {on | off}

預設值

ServerConnPool off

ServerConnTimeout -- 指定最大非現行期間

使用這個指引限制在取消連線之前,沒有網路活動情況下允許的時間。 唯有當 ServerConnPool 指引被設定為 on 時才能使用這個指引。

格式

ServerConnTimeout time-spec

範例

ServerConnTimeout 30 seconds

預設值

ServerConnTimeout 10 seconds

ServerInit -- 自訂「伺服器起始設定」步驟

這個指引可以指定伺服器在起始設定常式期間, 應呼叫的自訂應用程式函數。在讀取任何用戶端要求之前,以及每次重新啟動伺服器之後,都會執行本程式碼。

如果您在 PreExit 或 Service 步驟中使用 GoServe 模組, 則須在這裡呼叫 gosclone 模組。

格式

ServerInit /path/file:function_name [initialization_string]
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。
initialization_string
選用性的;指定傳給應用程式函數的文字字串。

範例

   ServerInit   /ics/api/bin/icsext05.so:svr_init

預設值

ServerRoot -- 指定安裝伺服器程式的目錄

使用這個指引來指定安裝伺服器程式的目錄(伺服器的現行工作目錄)。記錄指引時, 使用現行工作目錄,作為使用相對路徑名稱時的預設根目錄。

在 Windows 系統上,在安裝期間指出這個目錄。

格式

ServerRoot  directory_path

預設值

註:
您可以變更這個預設值,但它不會影響伺服器處理要求的方式。
註:
PASS 和 EXEC 規則與這個目錄無關。

ServerTerm -- 自訂「伺服器終止」步驟

這個指引可以指定伺服器執行「伺服器終止」步驟時, 應呼叫的自訂應用程式函數。在正常關機以及重新啟動伺服器之後,都會執行本程式碼。它可以讓您釋出由 PreExit 應用程式函數配置的資源。

格式

ServerTerm  /path/file:function_name
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。

範例

ServerTerm  /ics/api/bin/icsext05.so:shut_down

預設值

Service -- 自訂「服務」步驟

這個指引可以指定伺服器執行「服務」步驟時, 應呼叫的自訂應用程式函數。這個程式碼會替用戶端要求提供服務。例如,它將傳送檔案或執行 CGI 程式。

這個指引沒有預設值。 如果要求符合 Service 規則(即已執行在 Service 指引上指定的應用程式函數), 但函數卻傳回 HTTP_NOACTION,伺服器將產生錯誤,且要求就會失敗。

格式

Service request_template/path/file:function_name 
[server_IP_address | host_name]
request_template
指定能進一步決定是否已呼叫應用程式函數之要求範本。在這個規格當中,可以包含通訊協定、網域及主機; 可以在前面加上斜線 (/),也可以用星號 (*) 當作萬用字元。例如,/front_page.htmlhttp://www.ics.raleigh.ibm.com/pub*/** 均有效。
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定程式中應用程式函數的名稱。
[Server_IP_address | host_name]
如果您使用多重 IP 位址或虛擬主機, 這個參數可決定是僅對特定 IP 位址上送入的要求或是對特定的主機來呼叫您的應用程式函數。

不可對伺服器的 IP 位址指定萬用字元。

範例

Service  /index.html /ics/api/bin/icsext05.so:serve_req
Service  /cgi-bin/hexcalc* /ics/api/calculator:HEXcalc*
註:
如果您要完整路徑轉換(包括 query_string 在內), 一定要在 query_stringpath/file:function_name 中加上星號 (*), 如第二個範例所示。

預設值

SignificantURLTerminator -- 指定 URL 要求的終止碼

使用這個指引來指定 URL 要求的終止碼。 在要求中使用終止碼會使 Caching Proxy 在處理要求時以及評估是否已快取結果時,只評估終止碼前面的字元。 當已定義一個以上的終結字元碼時, Caching Proxy 會按照 ibmproxy.conf 檔中所定義的終結字元碼順序來比較進入的 URL 與終結字元碼。

格式

SignificantURLTerminator terminating_string   

範例

SignificantURLTerminator  &.

在這個範例中,後面兩個要求被視為相同要求。

http://www.exampleURL.com/tx.asp?id=0200&.;x=004;y=001
http://www.exampleURL.com/tx.asp?id=0200&.;x=127;y=034

預設值

SMTPServer(僅限 Windows)-- 設定 sendmail 常式的 SMTP 伺服器

使用這個指引來設定 Caching Proxy for Windows 中,內部 sendmail 常式所使用的 SMTP 伺服器。下列兩項指引也必須對這個常式設定:WebMasterEMail -- 設定電子郵件位址來接收選取伺服器報告WebMasterSocksServer(僅限 Windows)-- 設定 sendmail 常式的 Socks 伺服器

格式

SMTPServer IP 位址或 SMTP 伺服器的主機名稱

範例

SMTPServer mybox.com

預設值

SNMP -- 啟用及停用 SNMP 支援

使用本指引來啟用或停用 SNMP 支援。

格式

SNMP   {on | off}

預設值

SNMP off

SNMPCommunity -- 為 SNMP 提供安全性密碼

使用這個指引,定義 Web 伺服器「分散式通訊協定介面」(DPI) 子代理程式及 SNMP 代理程式之間的密碼。SNMP 團體名稱可授權讓使用者檢視由 SNMP 針對指定伺服器團體而監視的效能變數。 系統管理者會定義在輸入密碼以後, 可以檢視哪個伺服器的哪個變數。如果您要變更 SNMP 團體名稱, 請務必也變更 /etc/snmpd.conf 檔中所指定的團體名稱。

格式

SNMPCommunity name

預設值

SNMPCommunity public

SSLCaching -- 啟用安全要求的快取

使用這個指引,在使用反向 Proxy 時快取安全要求上的內容。 這個指引為 Proxy 伺服器的全部連線配置快取,包括用戶端連線及後端內容伺服器連線。

註:
SuSE Linux 不支援 SSL 指引。

格式

SSLCaching {on | off}

預設值

SSLCaching off

SSLCertificate -- 指定憑證的金鑰標籤

使用這個指引來指定金鑰標籤, 當 Caching Proxy 作為多個網域(它們提供自己的 SSL 憑證)的單一反向 Proxy 時, 這些金鑰標籤可讓 Proxy 決定哪一個憑證要傳給用戶端, 以及指示 Proxy 伺服器要不要擷取用戶端鑑別的用戶端 PKI 憑證。

格式

SSLCertificate serverIP/hostname CertificateLabel [NoClientAuth | ClientAuthRequired]
serverIP/hostname
您可以為 SSL 要求導向的伺服器指定 IP 位址(例如,204.146.167.72), 或主機名稱(例如,hostA.raleigh.ibm.com)。
CertificateLabel
憑證的名稱,如果導向到指定的 IP 位址或主機名稱的 SSL 要求需要用戶端鑑別,就會使用該憑證。
[NoClientAuth | ClientAuthRequired]
對於 Proxy 伺服器要不要擷取用戶端 PKI 憑證的指示。

範例

SSLCertificate  www.abc.com      ABCCert
SSLCertificate  204.146.167.72   intABCCert
SSLCertificate  www.xyz.com      XYZCert
SSLCertificate  www.xyz.com      XYZCert      ClientAuthRequired

預設值

SSLCryptoCard -- 指定已安裝的密碼卡

使用這個指引來通知 Proxy 伺服器已安裝一個密碼卡,並指定這個密碼卡。

格式

SSLCryptoCard {rainbowcs | nciphernfast} {on | off}

範例

SSLCryptoCard rainbowcs on

預設值

SSLEnable -- 指定在埠 443 上接收安全要求

使用這個指引來指定 Caching Proxy 在埠 443 上接收安全要求。

註:
SuSE Linux 不支援 SSL 指引。

格式

SSLEnable {on | off}

預設值

SSLEnable off

SSLForwardPort -- 指定用於 HTTP SSL 升級的埠

使用這個指引來指定因應 HTTP 要求的埠,Caching Proxy 藉由實作 SSL 將這些要求升級成 HTTPS 要求。 指定一個不是主要 HTTP 埠 80 或主要 SSL 埠 443 的埠。

格式

SSLForwardPort port number 	

範例

SSLForwardPort 8888

預設值

SSLOnly -- 停用 HTTP 要求的接收程式執行緒

啟用 SSL(通常是埠 443)時使用這個指引停用標準 HTTP 要求(通常是埠 80 和 8080)的接收程式執行緒。

格式

SSLOnly    {on | off}

預設值

SSLOnly   off

SSLPort -- 指定非預設的 HTTPS 接聽埠

請利用這個指引來指定 ibmproxy 預設 HTTPS 埠 443 以外的 HTTPS 接聽埠。

註:
ibmproxy 支援每個實例各一個 HTTPS 埠,因此,不應該利用這個指引來指定多重 HTTPS 埠。 如果要支援多重 HTTPS 埠,您必須利用不同的 ibmproxy.conf 檔來啟動多個 ibmproxy 實例。

格式

SSLPort port value
	

其中 port value 是一個大於 0 的整數值。另外,這個 port value 也應該是作業系統所接受的值,且不應給任何其他應用程式使用。

範例

SSLPort 8443

預設值

443

SSLTunneling -- 啟用 SSL 通道作業

使用這個指引,允許 SSL 通道作業到目的地主機上的任一埠。將這個指引設定為 on, 將允許 SSL 通道作業到目的地伺服器上的任一埠。將這個指引設定為 off, 將僅允許 SSL 通道作業到 Proxy 規則中所給定的埠。 如果沒有 SSL 通道作業的 Proxy 規則, 且 SSLTunneling 指引被設定為 off,則不允許進行 SSL 通道作業。 如果將 SSLTunneling 指引設定為 on,則您也必須使用 Enable 指引來啟用 CONNECT 方法。

當使用 Caching Proxy 作為反向 Proxy 時,停用這個指引(預設值)會防止 SSL 通道作業弱點攻擊。

註:
使用 Proxy 指引以啟用 SSL 通道作業到目的地主機上特定的埠。

格式

SSLTunneling {on | off}

預設值

SSLTunneling off

SSLVersion -- 指定 SSL 版本

使用這個指引來指定要使用 SSL 的哪一個版本:V2、V3 或全部版本。 如果使用無法支援 SSL 3 版的伺服器,請將這個指引設為 V2

註:
SuSE Linux 不支援 SSL 指引。

格式

SSLVersion  {SSLV2 | SSLV3 | all} 

預設值

SSLVersion SSLV3

SSLV2Timeout -- 指定 SSLV2 階段作業到期之前的等待時間

使用這個指引,指定在 SSL 版本 2 階段作業到期之前,如果沒有活動將等待多久(以秒計)。

註:
SuSE Linux 不支援 SSL 指引。

格式

SSLV2Timeout  seconds 

其中 seconds 代表 0100 之間的值。

預設值

SSLV2Timeout 100

SSLV3Timeout -- 指定 SSLV3 階段作業到期之前的等待時間

使用這個指引,指定在 SSL 版本 3 階段作業到期之前,如果沒有活動將等待多久(以秒計)。

註:
SuSE Linux 不支援 SSL 指引。

格式

SSLV3Timeout seconds

其中 seconds 代表 1 到 86400 秒(指一天的秒數)之間的一個值。

預設值

SSLV3Timeout 100

SuffixCaseSense -- 指定字尾定義是否有大小寫區分

使用這個指引,指定您是否希望伺服器在比較檔案字尾與 AddClient、AddCharSet、AddType、AddEncoding 和 AddLanguage 指引的字尾型樣時, 要區分大小寫字母。通知發生了根據預設值,伺服器並不區分大小寫。

格式

SuffixCaseSense  {on | Off}

預設值

SuffixCaseSense  Off

TLSV1Enable -- 啟用 Transport Layer Secure 通訊協定

使用這個指引,在 SSL 連線時啟用 TLS 版本 1 通訊協定。 開啟這個指引之後,SSL 連線會先檢查 TLS 通訊協定,接著檢查 SSLv3 通訊協定,最後檢查 SSLv2 通訊協定。

註:
這個指引可搭配 Internet Explorer 與其他瀏覽器使用,但不能與 Netscape 一起使用。(Netscape 不是建議用來搭配 Caching Proxy 的瀏覽器。)

格式

TLSV1Enable {on | off}

範例

TLSV1Enable on

起始配置設定

Transmogrifier -- 自訂「資料操作」步驟

這個指引可以指定伺服器執行「資料操作」步驟時, 應呼叫的自訂應用程式函數。這個程式碼提供三個應用程式函數:

伺服器的每個實例可以有多個使用中的 Transmogrifier。

格式

Transmogrifier /path/file:function_name:function_name:function_name
/path/file
指定經過編譯之程式的完整檔名,包括副檔名在內。
function_name
指定您在程式中給予應用程式函數的名稱。您必須輸入開啟、寫入及關閉函數的名稱。

範例

Transmogrifier /ics/bin/icsext05.so:open_data:write_data:close_data

預設值

TransmogrifiedWarning -- 傳送警告訊息至用戶端

使用這個指引來傳送訊息至用戶端,通知它資料:

格式

transmogrifiedwaning {yes|no}

預設值

TransparentProxy -- 在 Linux 或 AIX 上啟用透通式 Proxy

僅限 Linux 和 AIX。 使用這個指引,指定伺服器是否可以當作透通式 Proxy 伺服器來執行。

註:
TransparentProxy 指引設定為 On 時, 將不處理 BindSpecific 指引,且預設值為 Off。 因為大部分的「HTTP 資料傳輸」是在埠 80 上傳輸, 因此強烈建議它是其中一個已配置的埠。

格式

TransparentProxy  {On | Off} 
Port 80

預設值

TransparentProxy  Off
註:
啟動透通式 Proxy 之後,如果要停止 Caching Proxy 伺服器,您也必須以 root 身分發出下列指令:
ibmproxy -unload
在 Linux 系統上,這將移除重新導向「防火牆」規則,而且在 AIX 系統上, 它將卸載「透通式 Proxy 核心擴充」。 在停止伺服器後如果不發出這個指令, 將使得您的機器接受不是針對它的要求。

UpdateProxy -- 指定快取目的地

使用這個指引,指定快取代理程式應更新哪一個 Proxy 伺服器。 當快取代理程式需要更新它所執行的區域 Proxy 伺服器以外的 Proxy 伺服器時, 就必須使用它。您也可以選擇是否要指定連接埠。

註:
在 Linux 和 UNIX 平台中,使用快取代理程式時需要這個指引。 如果您只指定一部機器給 Proxy,請指定主機名稱。

雖然,快取代理程式可以更新另一伺服器上的快取, 但它不能從該機器中擷取快取存取日誌。 因此,如果 UpdateProxy 指引指定的主機不是區域主機,將忽略 LoadTopCached 指引。

格式

UpdateProxy fully_qualified_host_name_of_proxy_server

範例

UpdateProxy proxy15.ibm.com:1080

預設值

UserId -- 指定預設的使用者 ID

使用這個指引, 在存取檔案之前,指定伺服器要改成什麼使用者名稱或號碼。

如果您變更了這個指引,則必須先手動停止伺服器, 然後再重新啟動,這樣才能使變更生效。如果只是重新啟動伺服器的話, 伺服器將不會辨識變更。 (請參閱啟動與停止 Caching Proxy。)

註:
如果您變更使用者 ID、群組 ID 或日誌目錄路徑的伺服器預設值, 請建立新目錄並更新目錄的許可權及擁有權。如果要啟動伺服器, 將資訊寫入使用者定義的日誌目錄中,請將該目錄的許可權設成 755, 並將使用者定義的伺服器使用者 ID 設成擁有人。比方說,如果您將伺服器的使用者 ID 從預設值改成 jdoe, 且將預設日誌目錄改成 server_root/account, 則 server_root/account 目錄必須具有許可權 755, 且為 jdoe 所有。

格式

UserId  {ID_name | number} 

預設值

AIX、Linux、SolarisUserId nobody

HP-UX: UserId www

V2CipherSpecs -- 列出 SSL 2 版支援的密碼規格

這個指引列出 SSL 2 版可用的密碼規格。

註:
SuSE Linux 不支援 SSL 指引。

格式

V2CipherSpecs specification

下列任何組合都是可接受的值。這些值只能使用一次。

範例

預設值

無(在預設的狀況下會停用 SSL。)

V3CipherSpecs -- 列出 SSL 3 版支援的密碼規格

這個指引會列出 SSL 3 版可用的密碼規格。

註:
SuSE Linux 不支援 SSL 指引。

格式

V3CipherSpecs specification

可接受的值包括下列值:

範例

預設值

無(在預設的狀況下會停用 SSL。)

WebMasterEMail -- 設定電子郵件位址來接收選取伺服器報告

使用這個指引來設定要接收選取 Caching Proxy 報告的電子郵件位址,例如 SSL 憑證期限到期 30 天之前通知的報告。在 Linux 和 UNIX 系統中,必須執行 sendmail 程序。 如果是 Windows 系統,sendmail 程序是建置於 Caching Proxy 之中,因此不需要外部郵件伺服器;不過,必須額外設定兩個指引:WebMasterSocksServer(僅限 Windows)-- 設定 sendmail 常式的 Socks 伺服器SMTPServer(僅限 Windows)-- 設定 sendmail 常式的 SMTP 伺服器

註:
本電子郵件位址也作為匿名的 FTP 密碼使用。

格式

WebMasterEMail webmastermailaddress

範例

WebMasterEmail webmaster@computer.com

預設值

WebMasterEmail webmaster

WebMasterSocksServer(僅限 Windows)-- 設定 sendmail 常式的 Socks 伺服器

使用這個指引來設定 Caching Proxy for Windows 中,內部 sendmail 常式所使用的 Socks 伺服器。下列兩項指引也必須對這個常式設定:WebMasterEMail -- 設定電子郵件位址來接收選取伺服器報告SMTPServer(僅限 Windows)-- 設定 sendmail 常式的 SMTP 伺服器

格式

WebMasterSocksServer IP 位址或 Socks 伺服器的主機名稱

範例

WebMasterSocksServer socks.mybox.com

預設值

Welcome -- 指定歡迎使用檔案的名稱

使用這個指引, 指定伺服器應該尋找的歡迎使用檔案名稱,以回應不含特定檔名的要求。 您可以重複使用這個指引, 並將它們放進配置檔中來建立歡迎使用檔案清單。

而如果是不含檔名或目錄名稱的要求, 則伺服器通常都會在檔案根目錄中尋找與 Welcome 指引中所指定之名稱相符的檔案。 如果找到相符的檔案,則將它傳回要求者。

如果只含有目錄名稱而沒有檔案名稱的要求, 則 AlwaysWelcome 指引會控制伺服器是否要在目錄中尋找要傳回的歡迎使用檔案。依預設,AlwaysWelcome 會被設成 on 值。 這表示伺服器通常會在所要求的目錄中, 尋找檔案(符合在 Welcome 指引中所指定的名稱)。如果找到相符的檔案,則將它傳回要求者。

如果伺服器在目錄中的檔案與 Welcome 指引檔名之間找到數個相符的檔案, 則 Welcome 指引的順序會決定哪個檔案已傳回。伺服器會使用最靠近配置檔開頭的 Welcome 指引。

格式

Welcome file_name [server_IP_address | host_name]
file_name
指定將定義成歡迎使用檔案的檔案名稱。
[server_IP_address | host_name]
如果您使用多個 IP 位址或虛擬主機, 請使用這個參數來指定 IP 位址或主機名稱。 伺服器只針對這個 IP 位址的伺服器或針對這個主機的要求, 使用這個指引。 就 IP 位址而言, 這是伺服器網路連線的位址,而不是要求用戶端的位址。

您可以指定 IP 位址(例如,240.146.167.72)或指定主機名稱(例如,hostA.bcd.com)。

這個參數是選用性參數。如果沒有這個參數,則伺服器會將指引用在所有的要求上, 不管要求是進入 IP 位址,或是進入 URL 中的主機名稱都一視同仁。

不可對伺服器的 IP 位址指定萬用字元。

範例

預設值

按照預設配置使用的順序顯示這些預設值:

Welcome Welcome.html
Welcome welcome.html
Welcome index.html
Welcome Frntpage.html