一、Windows下resin的安裝以及配置
1
、安裝
1)安裝好JDK
2)把resin-3.0.x.zip解壓縮
3)運行resin-3.0.x/httpd.exe
4)開啟http://localhost:8080查看測試頁面
如果正確開啟,視窗會顯示如下資訊:
C:/win32> resin-3.0.0/bin/httpd
Resin 3.0.0-beta (built Thu Feb 13 18:21:13 PST 2003)
Copyright(c) 1998-2002 Caucho Technology. All rights reserved.
Starting Resin on Sat, 01 Mar 2003 19:11:52 -0500 (EST)
[19:11:56.479] ServletServer[] starting
[19:11:57.000] Host[] starting
[19:11:58.312] Application[http://localhost:8080/doc] starting
[19:12:11.872] Application[http://localhost:8080/quercus] starting
...
[19:12:12.803]http listening to *:8080
[19:12:12.933]hmux listening to *:6802
2、配置
部署為Windows下的服務:
The Resin Web Server can be installed as an Windows service.
Resin伺服器可以被安裝成為Windows的服務
要安裝為Windows的服務,可以用下面的命令
C:/> resin-3.0.x/bin/httpd -install -conf conf/myconf.conf
這樣Resin就會作為服務隨著機器的啟動而自動開啟。
要想移除此服務
C:/> resin-3.0.x/bin/httpd -remove
你也可以用如下命令開啟和關閉Resin的服務:
C:/> net start resin
...
C:/> net stop resin
多服務起配置:
使用參數 -install-as foo來指定一個特定的服務名
C:/> resin-3.0.x/bin/httpd -install-as ResinA -conf conf/myconf.conf
-server a
C:/> net start ResinA
注意:
有一些JDK存在這樣的Bug,當系統管理員帳戶登出以後服務也會隨著關閉,解決辦法是在安裝的時候使用參數–Xrs:
C:/> resin3.0.0/httpd.exe -install –Xrs
二、Linux下resin的安裝以及配置:
1、安裝
1) 安裝 JDK 1.4
2) 確定環境變數JAVA_HOME設定正確
3) 安裝
單獨運行:
# tar zxvf resin-3.0.4.tar.gz
# mv resin03.0.6 /usr/local/resin
#cd /usr/local/resin
# ./configure
# make
# make install
#cd bin
#./httpd.sh start
自動啟動:
在/etc/rc.d/rc.local中加入如下語句:
/usr/local/resin/bin/httpd.sh start
和Apache整合:
1)Apache安裝
# tar zxvf httpd-2.49.tar.gz
# cd httpd-2.49
# ./configure --prefix=/usr/local/httpd --enable-modules=so --enable-so
--prefix
--enable-modules用來指定系統允許使用的功能擴充模組的類型,這裡指定為so類型。
--enabel-so 用來指定允許使用DSO(Dynamic Share Object動態共用對象)。
# make
# make install
設定apache自動啟動:
將Apache的開機檔案apachectl寫入rc.local中
/usr/local/httpd/bin/apachectl start
2)Resin安裝
# tar zxvf resin-3.0.4.tar.gz
# cd resin-3.0.4
# ./configure --prefix=/usr/local/resin --with-apache=/usr/local/httpd
# make
# make install
此時已經產生Resin串連Apache2的.so檔案了,其存在與$APACHE_HOMEe/modules/mod_caucho.so
conf/httpd.conf中就會多出以下語句:
LoadModule caucho_modules modules/mod_caucho.so
ResinConfigServer localhost 6802
分別先後啟動Resin和Apache
訪問http://hostname/caucho-status 可以看到Resin的狀態頁面
2 、配置
1)linux下使用resin的單伺服器配置
使用單伺服器方案,只要安裝完畢,配置一下Resin的resin.conf檔案和app_default.xml檔案就可以了,resin.conf檔案中需要配置兩處,一是連接埠號碼,另一處是Web程式存放目錄,app_default.xml內可配置預設首頁的搜尋順序。由於原網站使用多個連接埠配置,所以單伺服器只能用於做單個網站的測試使用。
2)linux下使用resin的多伺服器配置以及多執行個體開機自動啟動並執行配置
有時候需要運行多個伺服器以在同一個IP上監聽多個連接埠,這時候就需要使用單獨的Resin伺服器運行多個執行個體,以監聽多個連接埠來部署多個Web網站。
可以有如下兩種配置方法:
第一種方法:
這種方法為多次使用httpd.sh的參數指定設定檔和運行時的pid檔案,實現多個執行個體的運行。
使用的命令列如下所示:
$RESIN_HOME/bin/httpd.sh -conf conf/resin1.conf -pid resin1.pid start
解釋:
-conf 選項為選擇此伺服器執行個體所用的設定檔,在這個檔案裡面配置不同的連接埠和主目錄。
-pid 進程id及所用pid檔案。
start 啟動。
用以上命令,在建立多個伺服器設定檔以後就可以手工開啟多個伺服器執行個體。
把這些語句加到/etc/rc.d/rc.local中就可以實現開機自動啟動了。
第二種方法:
這種方法使用Chkconfig命令設定多伺服器自動啟動,運行於不同系統運行層級的後台方式。並使他們成為可在圖形介面下管理的服務。
設定好JAVA_HOME環境變數後將RESIN解包到/home/resin下,執行編譯指令碼
#tar zxf resin-version.tar.gz
#mv resin-version /home/resin
#cd /home/resin/
#./configure
#make
#make install
將make install產生的$RESIN_HOME/contrib/init.resin複製到/etc/rc.d/init.d/目錄下改名為resinx
修改resin檔案的內容(三處)
(1)JAVA環境設定
找到以下程式碼片段
JAVA_HOME=/usr/java
RESIN_HOME=/usr/local/resin
並修改他們為相應的目錄,第一個為JDK安裝主目錄,第二個為Resin安轉主目錄。
(2)PID=$RESIN_HOME/resin.pid
修改為
PID=$RESIN_HOME/resin1.pid(很清楚,要不一樣的pid)
(3)、找到程式段
start)
echo -n "Starting resin: "
if test -n "$USER"; then
su $USER -c "$EXE -pid $PID start $ARGS"
else
$EXE -pid $PID start $ARGS
fi
echo
;;
修改為
start)
echo -n "Starting resin: "
if test -n "$USER"; then
su $USER -c "$EXE -conf $RESIN_HOME/conf/resin1.conf -pid $PID start $ARGS"
else
$EXE -conf $RESIN_HOME/conf/resin1.conf -pid $PID start $ARGS
fi
echo
;;
其實上面的程式和第一部分是一樣的,只是用指令碼來運行了。
最後chmod +x resin1
用上面的方法拷貝出resin2,resin3.....
chmod +x resin1
chmod +x resin2
......
命令為:
cp contrib/init.resin /etc/rc.d/init.d/resin1
vi /etc/rc.d/init.d/resin1
i
:wq
chmod +x /etc/rc.d/init.d/resin1
如此你想運行幾個伺服器執行個體建立幾個這樣的檔案(resinx)
修改resin中的一些設定:JAVA_HOME RESIN_HOME USER等,
將resin服務在不同的啟動級中設定成自啟動:
#/sbin/chkconfig resin1 reset
#/sbin/chkconfig resin2 reset
......
建立不同的設定檔
注意每一個設定檔必須保持三處不同:
(1)srun(Server Load Balancer配置)部分連接埠號碼必須不同,用不同的ip地址也可以。
在原檔案的如下部分:
<cluster>
<srun server-id="" host="127.0.0.1" port="6802"/>
</cluster>
(2)預設主檔案目錄要設為不同,不然就失去了多個執行個體的意義,不然的話還不如用Server Load Balancer來提高效能
<web-app id="/" document-directory="webapps/ROOT"/>
(3)伺服器的連接埠號碼必須不同。
<http server-id="" host="*" port="8080"/>
這樣系統啟動的時候,resin就會在後台運行多個執行個體了,效果和第一步一樣。