WebSphere® Application Server 提供一個 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 伺服器外掛程式 。
這個程序會配置機器上作為預設設定檔的應用程式伺服器設定檔。 Web 伺服器和應用程式伺服器之間存在一對一的關係。
這篇文章說明如何建立下列拓蹼:
這篇文章說明在一部機器上安裝 Web 伺服器,在另一部機器上安裝應用程式伺服器的情形。 在這個狀況中,一部機器上的「Web 伺服器外掛程式配置工具」無法建立另一部機器上應用程式伺服器配置中的 Web 伺服器定義。
在這類狀況中,「Web 伺服器外掛程式配置工具」會在 Web 伺服器機器上建立一個 Script,您可將它複製到應用程式伺服器機器中。 請在應用程式伺服器機器上執行這個 Script,以在應用程式伺服器配置內建立 Web 伺服器配置定義。
請執行下列程序來安裝外掛程式,並配置 Web 伺服器和應用程式伺服器。
程序
- 在機器 A 和機器 B 上安裝 Installation Manager。
- 使用 Installation Manager 在機器 A 上安裝 WebSphere Application Server 。
- 在機器 A 上建立獨立式應用程式伺服器。
- 選用: 為預設虛擬主機建立新的主機別名。
如果您將 Web 伺服器配置為使用埠 80 以外的埠,則您必須針對預設主機為該埠新增主機別名。 例如,以非 root 身分執行時, IBM HTTP Server 會配置預設埠值 8080。
- 使用 Installation Manager,將下列項目安裝在機器 B 上。
- WebSphere Application Server 的 Web 伺服器外掛程式
- WebSphere Customization Toolbox
- 使用 Installation Manager 在機器 B 上安裝 IBM HTTP Server ,或在機器 B 上安裝另一個受支援的 Web 伺服器。
開啟 WebSphere Customization Toolbox ,並在具有 Web 伺服器的機器上啟動「Web 伺服器外掛程式配置工具」。
- 選取 Web 伺服器外掛程式執行時期的位置。
如果您想使用先前的 Web 伺服器安裝位置,但卻不在清單中,請執行下列動作,將該位置新增至工作集:
- 按一下 新增。
- 輸入 Web 伺服器外掛程式位置的名稱。
- 請執行下列其中一個動作:
- 輸入位置。
- 按一下瀏覽,尋找位置,然後按一下確定。
- 按一下 建立。
- 選取您要配置的 Web 伺服器類型,然後按 下一步。
- 選取已安裝目標 Web 伺服器的架構 (64 位元或 32 位元) ,如果系統要求您的話,請按 下一步 。
- 按一下 瀏覽 以選取 Web 伺服器的一或多個配置檔,驗證 Web 伺服器埠是否正確,然後在完成時按 下一步 。
請選取檔案,而不是只選取檔案的目錄。 某些 Web 伺服器有兩個配置檔,因此需要您瀏覽每一個檔案。
下列清單顯示受支援之 Web 伺服器的配置檔:
- Apache Web Server
- apache_root/config/httpd.conf
- Domino ® Web 伺服器
- names.nsf and
Notes.jar
精靈會提示您使用 notes.jar 檔, 但實際的名稱是 Notes.jar。
「Web 伺服器外掛程式配置工具」會確認檔案存在,但此工具並不會驗證任一個檔案。
- IBM HTTP Server
IHS_root/conf/httpd.conf
IHS_profile_root/conf/httpd.conf
- Microsoft Internet Information Service (IIS)
- 「Web 伺服器外掛程式配置工具」可判斷出正確的檔案,以用來進行編輯。
- Oracle iPlanet Web Server
- obj.conf and
magnus.conf
- 如果您要配置 IBM HTTP Web 伺服器外掛程式,請執行下列動作。
- (選用)設定管理伺服器配置,以管理 Web 伺服器。
注意: 當使用「Web 伺服器外掛程式配置工具」來配置「 IBM HTTP Server 管理伺服器」時, Websphere Customization Toolbox 必須以具有 管理者/root 專用權的本端系統帳戶來執行。
- 選取 設定 IBM HTTP Server 管理伺服器。
- 指定 IBM HTTP 管理伺服器將在其上進行通訊的埠號。
- 選擇性地選取 建立 IBM Server Administration Server 鑑別的使用者 ID ,並從管理主控台輸入使用者 ID 和密碼,以向 IBM HTTP Server 管理伺服器進行鑑別。
- 按下一步。
![[Linux]](../images/nglinux.svg)
指定系統使用者 ID 和群組,以具備 IBM HTTP Server、 IBM HTTP Server 管理伺服器及 Web 伺服器外掛程式配置檔的寫入權。必要的話,請選取使用認證來建立新的唯一系統使用者 ID 和群組。
限制: 如果您指定的新使用者 ID 或群組名稱超出平台限制 (通常為 8 個字元,有時可配置) ,則配置可能會失敗。
選擇性地設定「 IBM HTTP Server 管理伺服器」,以作為「視窗」服務執行。
- 選取 執行 IBM HTTP Server 管理伺服器作為 Windows 服務。
- 請執行下列其中一個動作:
- 選取以本端系統帳戶登入。
- 選取以指定的使用者帳戶登入,並輸入該帳戶的使用者 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 目錄。
例如,在 IBM i 系統上,在預設位置中具有名為 web_server_1 的 IBM HTTP Server , 將 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/ngdist.svg)
- 在 AIX 或 Linux之類的系統上執行 locale charmap 指令。
- 在 Windows 機器上執行 CHCP 指令。
使用每一部機器上的指令結果,作為下列其中一項程序內,
web_server_machine_encoding
以及
application_server_machine_encoding 兩個變數的值。
編碼差異的補償程序
如果您是將指令輸入在同一行上,則請省略連續字元 (\)。
如果您的系統上之 iconv 指令不支援轉換對映,請將 Web 伺服器配置 Script 的內容複製到剪貼簿上,然後再將內容貼到應用程式伺服器執行所在的機器中。
附註: 在 Windows 作業系統上遠端配置之後,如果您將 .sh 檔案複製到 UNIX 型作業系統,則必須執行 chmod 755。
- 在 A 機器上啟動應用程式伺服器。
- 啟動 IBM HTTP Server 管理伺服器。
必須啟動管理伺服器, configureweb_server_name.bat/.sh Script 才能產生並傳播 plugin-cfg.xml 檔。 如需相關資訊,請參閱 啟動及停止 IBM HTTP Server 管理伺服器。
如果您沒有啟動管理伺服器, Script 可以配置 Web 伺服器,但不會延伸外掛程式,且PLGC0063E,PLGC0049E,以及PLGC0053E發生錯誤。
- 開啟指令視窗,然後切換至應在其中指派 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..
![[Linux]](../images/nglinux.svg)
![[AIX]](../images/ngaix.svg)
![[HP-UX]](../images/nghpux.svg)
僅限 Domino Web 伺服器: 設定 WAS_PLUGIN_CONFIG_FILE 環境變數。
在 AIX 或 Linux之類的平台上,將 Script 委外至母項 Shell 可讓子程序繼承匯出的變數。 在 Windows 系統上,執行 Script ,就像您執行任何其他指令一樣。 在 Windows 系統上,貨源是自動的。
- 開啟指令視窗。
- 將目錄切換至外掛程式安裝根目錄。
- 對 plugins_root/bin/setupPluginCfg.sh Script 發出適當的指令:
![[AIX]](../images/ngaix.svg)
![[HP-UX]](../images/nghpux.svg)
![[Solaris]](../images/ngsolaris.svg)
.
plugins_root/bin/setupPluginCfg.sh
(請注意期間與安裝根目錄之間的空間。)
![[Linux]](../images/nglinux.svg)
source
plugins_root/bin/setupPluginCfg.sh
該 Script 也位於 AIX 或 Linux等作業系統上的 lotus_root/notesdata 目錄中。
在啟動 Domino Web 伺服器之前,請針對 Script 發出適當的指令。
- 使用管理主控台在機器 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 來測試環境。
- 啟動應用程式伺服器。
- 啟動 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/ngdist.svg)
存取
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/ngdist.svg)
使用下列步驟,驗證自動傳播功能可以在遠端 IBM HTTP Server 上運作。 這個程序對本端 Web 伺服器並不需要。
- 在 IHS_root /conf/admin.passwd 檔中建立 user=adminUser, password=adminPassword 。 例如: c:\ws\ihs90\bin\htpasswd -cb
c:\ws\ihs90\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 管理伺服器。
- 使用 htpasswd 指令,驗證在 WebSphere Application Server 管理主控台中所指定受遠端管理的使用者 ID 和密碼,已建立在 admin.passwd 檔中。
- 如果您嘗試進行安全連線,
請驗證已將 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 檔案) ,以判斷問題的原因。
結果
此程序會導致在 Web 伺服器機器上安裝 WebSphere Application Server 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 伺服器配置檔 。