在 Windows 2000 + IIS 5.0 + Resin 2.0.5 環境下,透過建立多個虛擬目錄,各自指向獨立的 isapi_srun.dll 與 resin.ini,實現每個虛擬主機擁有獨立 JVM。適用於需隔離應用程式、獨立重啟的共享主機環境。
Inetpub
└ VirtualScripts
├ Resin1
│ ├ isapi_srun.dll
│ └ resin.ini → CauchoConfigFile d:/resin/conf/resin1.conf
├ Resin2
│ ├ isapi_srun.dll
│ └ resin.ini → CauchoConfigFile d:/resin/conf/resin2.conf
└ Resin3
├ isapi_srun.dll
└ resin.ini → CauchoConfigFile d:/resin/conf/resin3.conf
scripts 指向對應 ResinX 目錄,權限勾選 執行 (ISAPI 應用程式)。.jsp、/* 對應到 isapi_srun.dll,取消「檢查檔案是否存在」。<caucho.com>
<http-server>
<host id="resin1.rockhopper.com">
<app-dir>d:\websites\resin1</app-dir>
</host>
<http port="8081"/>
<srun port="6801"/>
<resin:include href="resin-http-server.conf"/>
</http-server>
<resin:include href="resin-param.conf"/>
</caucho.com>
每個 conf 檔需使用不同的 http port 與 srun port 避免衝突。共用設定可透過 resin:include 引入。
httpd -conf d:\resin\conf\resin1.conf install-as Resin1 httpd -conf d:\resin\conf\resin2.conf install-as Resin2 httpd -conf d:\resin\conf\resin3.conf install-as Resin3
啟動各服務後,重新啟動 IIS 即生效。