jboss服務器經過端口對應項目

實現功能:在單個jboss服務器實現經過不一樣的端口號來訪問不一樣的web項目,避免了當訪問非根項目必須是經過ip+/端口號+/項目名才能訪問。linux

參考文檔:http://my.oschina.net/xiaohong/blog/28151 web

Jboss服務器版本:4.2.2GAwindows

Jboss目錄結構:服務器

實現原理:在運行jboss\bin 啓動服務命令run.bat 默認加載 jboss\server\default中的項目,現經過運行default和 demo兩個文件實例,並相應綁定不一樣端口。ssh

當訪問8080端口時,加載default實例。 訪問80端口,加載demo實例。post

實現過程:url

1.複製jboss\server\default文件在當前目錄,並將目錄重命名爲:demospa

2.在jboss\server\demo\conf\jboss-service.xml文件中,查詢到.net

   <mbean code="org.jboss.services.binding.ServiceBindingManager"code

     name="jboss.system:service=ServiceBindingManager">

     <attribute name="ServerName">ports-01</attribute>

     <attribute name="StoreURL">${jboss.home.url}/docs/examples/binding-manager/sample-bindings.xml</attribute>

     <attribute name="StoreFactoryClassName">

       org.jboss.services.binding.XMLServicesStoreFactory

     </attribute>

   </mbean>

將註釋去除,並修改name=ServerName值,值包括posts-default,posts-01,posts-02,posts-03.

當前使用posts-01。

在jboss\docs\examples\binding-manager\sample-bindings.xml能夠查詢到ports-0X的端口值(若是文件不存在,請拷貝同版本到相應目錄)。

3.修改項目默認端口:

  在jboss\server\demo\deploy\jboss-web.deployer\server.xml中修改實例demo默認訪問端口:

<Connector port="80" address="0.0.0.0"    

         maxThreads="250" maxHttpHeaderSize="8192"

         emptySessionPath="true" protocol="HTTP/1.1"

         enableLookups="false" redirectPort="8443" acceptCount="100"

         connectionTimeout="20000" disableUploadTimeout="true" />

    實例default默認端口任是8080;

4.運行項目(windows下)

   1.在windows中運行doc命令,進入jboss\bin文件,而後執行

# ./Run.bat -c demo &

   就能夠使用80端口訪問cvc文件中的項目。

2.在進入doc執行  run.bat

就能夠使用8080訪問default實例中得項目

5.關於使用ssh鏈接,但其一斷開,jboss服務就中止的解決方法(linux下):

   問題場景:在啓動demo實例時,在ssh控制檯輸入「./run.sh -c demo」命令,但斷開ssh後,該實例就不能訪問。

    解決方法:啓動實例時,命令輸入「./run.sh -c demo &」.運行完成後,執行#exit,jboss將放到後臺運行。如今斷開ssh遠程終端窗口,就能夠了。

相關文章
相關標籤/搜索