WebSphere® Application
Server 提供 Web 伺服器外掛程式,可讓您配置成與特定品牌的 Web 伺服器通訊。您將瞭解如何將 Web 伺服器和其 WebSphere Application Server 的 Web 伺服器外掛程式安裝在一部機器上,以及在另一部機器上配置預設設定檔中的應用程式伺服器,以便與 Web 伺服器通訊。
開始之前
若有多份設定檔存在時,您可以選取「Web 伺服器外掛程式配置工具」配置的設定檔。有關決定如何選取所要配置之設定檔的邏輯流程的說明,請參閱外掛程式配置。
若有多份設定檔存在時,您可以選取「Web 伺服器外掛程式配置工具」配置的設定檔。有關決定如何選取所要配置之設定檔的邏輯流程的說明,請參閱外掛程式配置。
如果 WebSphere Application Server 系列產品支援特定品牌的 Web 伺服器(如:IBM® HTTP Server 或 Microsoft Internet Information Services
(IIS)),則 WebSphere Application
Server 產品會提供您必須安裝之 Web 伺服器的二進位外掛程式。
如果 WebSphere Application Server 系列產品未提供特定品牌之 Web 伺服器的二進位外掛程式,該 Web 伺服器即不受支援。二進位外掛程式的用途是提供 Web 伺服器和應用程式伺服器之間的通訊協定。
假設您建立了新的設定檔,同時假設您要使用 Web 伺服器。您必須安裝新的 Web 伺服器以用於該新的設定檔、安裝「Web 伺服器外掛程式」,並使用「Web 伺服器外掛程式配置工具」來配置 Web 伺服器和應用程式伺服器。
如果尚未安裝 Web 伺服器,您仍然可以安裝「Web 伺服器外掛程式」供未來使用。
關於這項作業
安裝「Web 伺服器外掛程式」會安裝外掛程式模組。「Web 伺服器外掛程式配置工具」會配置 Web 伺服器讓它與應用程式伺服器通訊,以及儘可能在應用程式伺服器建立 Web 伺服器配置定義。
支援的配置: 只有在 AIX®、Linux 和 Windows 上,才支援此工具。除了使用「Web 伺服器外掛程式配置工具」,您也可以改用 pct 指令行工具與回應檔來配置 Web 伺服器。
如需相關資訊,請參閱
使用 pct 工具來配置 Web 伺服器外掛程式。
sptcfg
這個程序會配置機器上作為預設設定檔的應用程式伺服器設定檔。Web 伺服器和應用程式伺服器之間存在一對一的關係。
這篇文章說明如何建立下列拓蹼:
小心: 如果您打算將應用程式伺服器節點加入部署管理程式 Cell 中,但尚未完成,請先啟動部署管理程式並聯合節點,再配置外掛程式。您不能將含有 Web 伺服器定義的應用程式伺服器加入部署管理程式 Cell 中。
下列拓蹼視為遠端拓蹼,因為 Web 伺服器位於另一部機器上。此圖表顯示在分散式環境的典型遠端拓蹼:
這篇文章說明在一部機器上安裝 Web 伺服器,在另一部機器上安裝應用程式伺服器的情形。在這個狀況中,一部機器上的「Web 伺服器外掛程式配置工具」無法建立另一部機器上應用程式伺服器配置中的 Web 伺服器定義。
在這類狀況中,「Web 伺服器外掛程式配置工具」會在 Web 伺服器機器上建立一個 Script,您可將它複製到應用程式伺服器機器中。請在應用程式伺服器機器上執行這個 Script,以在應用程式伺服器配置內建立 Web 伺服器配置定義。
請執行下列程序來安裝外掛程式,並配置 Web 伺服器和應用程式伺服器。
程序
- 在機器 A 和機器 B 上安裝 Installation Manager。
- 在機器 A 中,使用 Installation Manager 來安裝 WebSphere
Application Server Network Deployment。
- 在機器 A 上建立獨立式應用程式伺服器。
- 選擇性的: 為預設虛擬主機建立新的主機別名。
如果您將 Web 伺服器配置為使用埠 80 以外的埠,則您必須針對預設主機為該埠新增主機別名。例如,以非 root 使用者的身分執行時,IBM HTTP Server 會配置預設埠值 8080。
- 使用 Installation Manager,將下列項目安裝在機器 B 上。
- WebSphere Application Server 的 Web 伺服器外掛程式
- Websphere Customization Toolbox
- 在機器 B 中,使用「安裝管理程式」來安裝 IBM HTTP Server 或另一個受支援的 Web 伺服器。
開啟 WebSphere Customization Toolbox,然後在配備 Web 伺服器的機器上啟動「Web 伺服器外掛程式配置工具」。
- 選取 Web 伺服器外掛程式執行時期的位置。
如果您想使用先前的 Web 伺服器安裝位置,但卻不在清單中,請執行下列動作,將該位置新增至工作集:
- 按一下新增。
- 輸入 Web 伺服器外掛程式位置的名稱。
- 請執行下列其中一個動作:
- 輸入位置。
- 按一下瀏覽,尋找位置,然後按一下確定。
- 按一下建立。
- 選取您要配置的 Web 伺服器類型,然後按下一步。
- 選取已安裝之目標 Web 伺服器的架構(64 位元或 32 位元),並按下一步(如果要求您這麼做的話)。
- 按一下瀏覽以選取 Web 伺服器的配置檔,確認 Web 伺服器埠是正確的,完成時按下一步。
請選取檔案,而不是只選取檔案的目錄。某些 Web 伺服器有兩個配置檔,因此需要您瀏覽每一個檔案。
下列清單顯示受支援之 Web 伺服器的配置檔:
- Apache HTTP Server
- apache_root/config/httpd.conf
- Domino® Web 伺服器
- names.nsf 和 Notes.jar
精靈會提示您使用 notes.jar 檔,但實際的名稱是 Notes.jar。
「Web 伺服器外掛程式配置工具」會確認檔案存在,但此工具並不會驗證任一個檔案。
- IBM HTTP Server
IHS_root/conf/httpd.conf
IHS_profile_root/conf/httpd.conf
- Microsoft Internet
Information Services (IIS)
- 「Web 伺服器外掛程式配置工具」可判斷出正確的檔案,以用來進行編輯。
- Sun Java™ System Web Server(早期為 Sun ONE Web Server 和 iPlanet Web Server)6.0 版以及更新版本
- obj.conf 和 magnus.conf
- 如果您正在配置 IBM HTTP Web 伺服器外掛程式,請執行下列動作。
- (選用)設定管理伺服器配置,以管理 Web 伺服器。
小心: 當您使用「Web 伺服器外掛程式配置工具」來配置
IBM HTTP Server 管理伺服器時,必須以具備管理者/root 專用權的「本端」帳戶,來執行 WebSphere Customization Toolbox。
- 選取設定 IBM HTTP
Server 管理伺服器。
- 指定 IBM HTTP 管理伺服器所用的通訊埠號。
- (選用)選取建立 IBM Server 管理伺服器鑑別用的使用者 ID,並輸入從管理主控台接受 IBM HTTP Server 管理伺服器鑑別時所用的使用者 ID 與密碼。
- 按下一步。
![[AIX]](../images/aixlogo.gif)
指定對 IBM HTTP
Server、IBM HTTP Server
管理伺服器和 Web 伺服器外掛程式配置檔具備寫入權的系統使用者 ID 和群組。必要的話,請選取使用認證來建立新的唯一系統使用者 ID 和群組。
限制: 如果您指定的新使用者 ID 或群組名稱超過平台限制
(通常是 8 個字元,有時可以配置),配置可能失敗。
(選用)將 IBM HTTP Server 管理伺服器設為以 Windows 服務形式執行。
- 選取以 Windows 服務形式,來執行 IBM HTTP Server 管理伺服器。
- 請執行下列其中一個動作:
- 選取以本端系統帳戶登入。
- 選取以指定的使用者帳戶登入,並輸入該帳戶的使用者 ID 與密碼。
- 選擇您的啟動類型是自動還是手動。
- 按下一步。
- 指定 Web 伺服器定義的唯一名稱,並按下一步。
- 選取配置實務。
- 選擇遠端實務。
- 識別機器 A(這是應用程式伺服器機器)的主機名稱或 IP 位址。
- 按下一步。
- 選取要配置成使用現行 Web 伺服器外掛程式的設定檔,並按下一步。
如果您在先前步驟中選取遠端實務,則不會顯示這個畫面。
- 檢查摘要畫面,然後按一下配置開始進行配置。
這個畫面係通知您需要執行手動步驟,才能完成安裝和配置。
「Web 伺服器外掛程式配置工具」會在機器 B(裝有 Web 伺服器的機器)的 plugins_root/bin/ 目錄中,建立 configureweb_server_name Script。
「Web 伺服器外掛程式配置工具」也會在 plugins_root/config/web_server_name 目錄中,建立 plugin-cfg.xml 檔。
Web 伺服器會讀取 plugin-cfg.xml 檔,來判定機器 A 上的應用程式伺服器可以提供哪些應用程式給機器 B 上的 Web 伺服器。只要配置變更,應用程式伺服器就會重新產生該檔案。當重新產生時,請將實際的 plugin-cfg.xml 檔從應用程式伺服器機器傳播或複製到 Web 伺服器機器。您可以將該檔案自動傳播到 IBM HTTP Server 產品。
- 在摘要畫面中,驗證安裝成功,並按一下完成。
如果發生問題且安裝未順利完成,請檢查 plugins_root/logs 目錄中的日誌。
請更正任何問題,並重新配置。
- 將 configureweb_server_name Script
從機器 B(裝有 Web 伺服器的機器)複製到機器 A(應用程式伺服器機器)上的 app_server_root /bin 目錄。
web_server_name 是指您所指定的 Web 伺服器暱稱。web_server_name 不是供應商名稱,如 IIS 或 Apache。
在像是 AIX 或 Linux 的作業系統上,此檔案為 configureweb_server_name.sh。
在 Windows 系統上,此檔案為 configureweb_server_name.bat。
例如,在預設位置中有名為 web_server_1 的 IBM HTTP Server 的 Linux 系統上,將 plugins_root/bin/configureweb_server_1.sh 從機器 B(裝有 Web 伺服器的機器)複製到機器 A(應用程式伺服器機器)上的 app_server_root/bin 目錄。
例如,在預設位置中有名為 web_server_1 的 IBM HTTP Server 的 IBM i 系統上,將 plugins_root/bin/configureweb_server_1
從機器 B(裝有 Web 伺服器的機器)複製到機器 A(應用程式伺服器機器)上的 app_server_root/bin 目錄。
- 補償檔案編碼差異,防止 Script 失敗。
如果兩部機器的預設檔案編碼不同時,configureweb_server_name.bat Script 或
configureweb_server_name.sh Script 的內容極可能會毀損。
如果某部機器的編碼設為雙位元組字集 (DBCS) 語言環境,但另一部機器不是時,就會發生這種情況。
如果兩部機器的預設檔案編碼不同,configureweb_server_name Script 的內容極可能會毀損。
如果某部機器的編碼設為雙位元組字集 (DBCS) 語言環境,但另一部機器不是時,就會發生這種情況。
判定檔案編碼,並使用下列其中一項程序避開失敗問題發生。
如果要判定預設檔案編碼,請執行適當的指令。
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
- 在 AIX 或 Linux 之類的系統上,執行 locale charmap 指令。
- 在 Windows 機器上執行 CHCP 指令。
使用每一部機器上的指令結果,作為下列其中一項程序內,web_server_machine_encoding
以及 application_server_machine_encoding 兩個變數的值。
編碼差異的補償程序
如果您是將指令輸入在同一行上,則請省略連續字元 (\)。
如果您的系統上之 iconv 指令不支援轉換對映,請將 Web 伺服器配置 Script 的內容複製到剪貼簿上,然後再將內容貼到應用程式伺服器執行所在的機器中。
註: 如果您在 Windows 作業系統上進行遠端配置之後,將 .sh 檔複製到 UNIX 型作業系統上,您必須執行 chmod 755。
- 在機器 A 中,啟動應用程式伺服器。
- 開啟指令視窗,然後切換至應在其中指派 Web 伺服器的設定檔目錄。執行您複製到機器 A(應用程式伺服器機器)的 Script。 您需要下列參數:
- 設定檔名稱
- (選用)管理使用者 ID
- (選用)管理使用者密碼
例如,您可以輸入下列資訊:configurewebserver1.sh AppSrv01 my_user_ID my_Password
Web 伺服器將透過 wsadmin 進行配置。configurewebserver1.sh Script 的內容會類似以下所示:
wsadmin.bat -profileName AppSrv01 -user my_user_ID -password my_Password
-f "%WAS_HOME%\bin\configureWebserverDefinition.jacl" webserver1 IHS..
- 從部署管理程式的管理主控台中,按一下系統管理 > 儲存主儲存庫的變更 > 與節點同步變更 > 儲存。
僅限 Domino Web 伺服器:設定 WAS_PLUGIN_CONFIG_FILE 環境變數。 在像是 AIX 或 Linux 的平台中,尋找母項 Shell 的 Script 來源可讓子程序繼承匯出的變數。
在 Windows 系統中,請依照您執行任何其他指令的方式來執行 Script。在 Windows 系統中,尋找來源會自動執行。
- 開啟指令視窗。
- 將目錄切換至外掛程式安裝根目錄。
- 對 plugins_root/bin/setupPluginCfg.sh Script 發出適當的指令:
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
. plugins_root/bin/setupPluginCfg.sh(請注意句點和安裝根目錄之間的空格。)
source plugins_root/bin/setupPluginCfg.sh
該 Script 也位於像是 AIX 或 Linux 作業系統的 lotus_root/notesdata 目錄中。
請先對該 Script 發出適當的指令,再啟動 Domino Web 伺服器。
- 在機器 A(應用程式伺服器機器)中,利用管理主控台來重新產生 plugin-cfg.xml 檔。按一下伺服器 > 伺服器類型 > Web 伺服器。
請選取 Web 伺服器,然後按一下產生外掛程式。
在外掛程式的安裝期間,預設的 plugin-cfg.xml 檔會安裝在機器 B(含有 Web 伺服器的機器)的 plugins_root/config/web_server_name 目錄中。Web 伺服器外掛程式的配置服務會自動重新產生 plugin-cfg.xml 檔。
如果要使用來自應用程式伺服器的現有 plugin-cfg.xml 檔,請依照下一步的說明,傳播 plugin-cfg.xml 檔。
這個步驟會顯示如何重新產生 plugin-cfg.xml 檔。
WebSphere Application Server
產品會配置成每次發生重要事件時,即自動重新產生該檔案。比方說,這類事件包括在應用程式伺服器和 Web 伺服器中安裝應用程式。建立新的虛擬主機是另一個這類事件。
- 使用管理主控台,從應用程式伺服器將 plugin-cfg.xml 檔傳播至 Web 伺服器。按一下伺服器 > Web 伺服器。
請選取 Web 伺服器,然後按一下傳播外掛程式。IBM HTTP
Server 以外的 Web 伺服器都需要手動傳播。
Web 伺服器外掛程式配置服務只會自動傳播 IBM HTTP Server 的 plugin-cfg.xml 檔。
請針對所有的其他 Web 伺服器來傳播外掛程式,方法為手動將 plugin-cfg.xml 檔從機器 A(應用程式伺服器機器)上的 profile_root/config/cells/cell_name/nodes/node_name/servers/web_server_name 目錄,複製到機器 B(含有 Web 伺服器的機器)上的 plugins_root/config/web_server_name 目錄。
- 啟動 Snoop Servlet 來驗證 Web 伺服器從應用程式伺服器擷取應用程式的功能。
啟動應用程式伺服器、Web 伺服器,並使用含 IP 位址的 Snoop Servlet 來測試環境。
- 啟動應用程式伺服器。 在 Network Deployment 環境中,只有當您在將應用程式伺服器加入 Cell 中時有包含 DefaultApplication,才可在 Cell 中使用 Snoop Servlet。addNode 指令的 -includeapps 選項會將 DefaultApplication 移轉到 Cell。
如果應用程式不存在,請跳過這個步驟。
- 啟動 IBM HTTP
Server 或您所使用的 Web 伺服器。
使用 2001 頁面或使用 STRTCPSVR
SERVER(*HTTP) HTTPSVR(instance_name ) 指令來啟動 IBM HTTP Server。
請利用指令視窗,來切換至 IBM HTTP Server 安裝映像檔或 Web 伺服器安裝映像檔的目錄。請發出適當的指令來啟動 Web 伺服器,例如下列 IBM HTTP Server 的指令:
如果要從指令行啟動 IBM HTTP Server,請執行下列動作:
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
存取
IBMHttpServer/bin 目錄中的
apache 和
apachectl 指令。
- 將瀏覽器指向 http://localhost:9080/snoop,測試應用程式伺服器提供的內部 HTTP 傳輸。
將瀏覽器指向 http://Host_name_of_Web_server_machine/snoop,以測試 Web 伺服器外掛程式。
依預設,HTTP 傳輸埠是 9080,且對每一個設定檔而言都必須是唯一的。這個埠和名稱為 default_host 的虛擬主機相關聯,配置成控管已安裝的 DefaultApplication。
Snoop Servlet 是 DefaultApplication 的一部分。請變更這個埠,以符合實際的 HTTP 傳輸埠。
- 驗證 Snoop 在執行中。
任一個網址都應該會顯示「Snoop Servlet - 要求/用戶端資訊」頁面。
- 僅限遠端 IBM HTTP
Server:
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
利用以下步驟,驗證自動傳播功能可以在遠端 IBM HTTP Server 上運作。
這個程序對本端 Web 伺服器並不需要。
- 在 IHS_root /conf/admin.passwd 檔中,建立 user=adminUser,password=adminPassword。
例如:c:\ws\ihs85\bin\htpasswd -cb c:\ws\ihs85\conf\admin.passwd
adminUser adminPassword
- 利用部署管理程式或應用程式伺服器的管理主控台,輸入您為 IBM HTTP Server 的管理使用者所建立的使用者 ID 和密碼資訊。移至伺服器 > Web 伺服器 > web_server_definition > 遠端 Web 伺服器管理。
設定下列值:管理埠=8008,使用者 ID=adminUser,密碼=adminPassword。
- 設定 httpd.conf 以及 plugin-cfg.xml 兩個檔案的正確讀寫權。
請參閱 IHS_root /logs/admin_ERROR.
LOG 檔,以取得相關資訊。
如果要自動傳播外掛程式配置檔,IBM HTTP 管理伺服器必須已經啟動且在執行中。如果您是使用 WebSphere Application Server 管理主控台來管理 IBM HTTP Server,可能會顯示下列錯誤訊息:
"無法連接到 IHS 管理伺服器錯誤"
請執行下列程序,更正錯誤:
- 驗證 IBM HTTP
Server 管理伺服器在執行中。
- 驗證 WebSphere Application Server 管理主控台中定義的 Web 伺服器主機名稱和埠號,符合 IBM HTTP Server 管理主機名稱和埠號。
- 驗證防火牆不會讓您無法從 WebSphere Application
Server 管理主控台存取 IBM HTTP Server 管理伺服器。
- 驗證已在 admin.passwd 檔中,使用 htpasswd 指令建立了
WebSphere Application Server 管理主控台中所指定的、受遠端管理的使用者 ID 和密碼。
- 如果希望進行安全連線,請驗證已將 IBM HTTP Server 管理伺服器的 keydb 個人憑證,匯出至 WebSphere Application Server 金鑰資料庫,作為簽章者憑證。這個金鑰資料庫是在管理主控台執行所在的設定檔之 sas.client.props 檔中,以 com.ibm.ssl.trustStore 指引指定。這項考量主要是針對自簽憑證。
- 如果仍然有問題,請查看 IBM HTTP Server admin_ERROR.LOG
檔和 WebSphere Application Server 日誌(trace.log 檔),來判斷發生問題的原因。
結果
執行這項程序之後,您已將 WebSphere Application Server 的 Web 伺服器外掛程式安裝在 Web 伺服器機器上。「Web 伺服器外掛程式配置工具」也會將 Web 伺服器配置成支援另一部機器上的應用程式伺服器。
安裝 Web 伺服器外掛程式會建立
Plugins 目錄和一些子目錄。比方說,以下是在 Linux 系統上建立的一些目錄:
- plugins_root/bin/32bits 或 plugins_root/bin/64bits 包含所有受支援之 Web 伺服器的二進位外掛程式
- plugins_root/logs 含有日誌檔
- plugins_root/properties 含有版本資訊
下一步
請參閱選取 Web 伺服器拓蹼圖和導覽圖,以取得安裝程序的概觀。
如需配置 Web 伺服器時所涉及之檔案的相關資訊,請參閱 Web 伺服器配置。
如需外掛程式配置檔位置的相關資訊,請參閱外掛程式配置。
如需「Web 伺服器外掛程式配置工具」如何配置支援的 Web 伺服器的相關資訊,請參閱編輯 Web 伺服器配置檔。