現在我有兩個Server,一個是WebSphere(Ap Server),一個是IHS(Web Server)
今天的目標是,透過IHS反向代理到WebSphere上部屬的程式,
目前透過Port 80連線到IHS回應還是404,表示IHS還沒有進行反向代理,
要讓IHS反向代理,首先要先登入WebSphere Console
側邊選單 > Servers > Server Types > Web servers
點選昨天新增的webserver1
點選Plug-in properties
可以看到
plugin-cfg.xml以及plugin-key.kdb
被指定放在IHS的/opt/IBM/WebSphere/Plugins/config/webserver1/目錄下
這個目錄需要自己建,log目錄也順便一起建:
mkdir /opt/IBM/WebSphere/Plugins/config/webserver1
mkdir /opt/IBM/WebSphere/Plugins/logs/webserver1
chown -R ihsadmin:ihsgroup /opt/IBM/WebSphere/Plugins/config/webserver1
chown -R ihsadmin:ihsgroup /opt/IBM/WebSphere/Plugins/logs/webserver1
建好之後,回到web server列表頁,勾選webserver1,
點選Generate Plug-in、Propagate Plug-in
記錄相關反向代理設定的設定檔plugin-cfg.xml就會被傳送到IHS了
# ls -ltr
total 4
-rw-r--r-- 1 ihsadmin ihsgroup 3684 Oct 9 17:11 plugin-cfg.xml
這邊要手動改一下plugin-cfg.xml
由於WebSphere會在特定情況下自動派送plugin-cfg.xml,
為了避免WebSphere洗掉我的修改,
我會讓IHS讀取另一個my-plugin-cfg.xml
#先改檔名
mv plugin-cfg.xml my-plugin-cfg.xml
#修改內容如下
vi my-plugin-cfg.xml
這裡要將 Hostname="localhost" 改為 Hostname="[websphere 的IP]"
<Transport ConnectionTTL="28" Hostname="localhost" Port="9080" Protocol="http"/>
<Transport ConnectionTTL="28" Hostname="localhost" Port="9443" Protocol="https">
然後回到httpd.conf
加上這兩行之後重啟
LoadModule was_ap22_module /opt/IBM/WebSphere/Plugins/bin/64bits/mod_was_ap22_http.so
WebSpherePluginConfig /opt/IBM/WebSphere/Plugins/config/webserver1/my-plugin-cfg.xml
IHS成功進行反向代理了