`

JBOSS维护经验 JBoss 的一些配置(端口,虚拟目录,虚拟主机,中文问题,数据库连接)

阅读更多
JBOSS维护经验

转贴   更新:2005-04-29 16:26:14  版本: 1.0    


原文:http://www.ufgov.com.cn/support/viewDetail.asp?id=677


一、设置控制台登录窗口

<br>安装好jboss并启动jboss后,在浏览器窗口的地址栏里键入                                                                                                                                                                                        http://localhost:8080/jmx-consolehttp://localhost:8080/jmx-console就可以浏览jboss的部署管理的一些信息,默认情况下不键入任何用户名和密码就可以进入此页面,          方便是方便,但真正使用起来还是有点安全隐患,因为不管任何人只要知道server的ip    都可以进去访问。下面我们针对此问题对jboss进行配置,使得访问jmx-console也必须    要知道用户名和密码才可进去访问.
步骤:
1.  进入jmx-console.war,通常此目录在{jboss_home}\server\default\deploy目录下。
2.  编辑该目录下的WEB-INF\web.xml,把<security-constraint>部分注释去掉
3.  编辑该目录下的WEB-INF\classes的roles.properties和users.properties;其中
       1)  users.properties文件里定义用户名和密码,格式为username=password。当然,可以依                                                                  照此格式添加多个用户。 
2)  roles.propertie文件里定义用户名和角色,格式为username=role。这里的role必须和web.xml文件里的<role-name>相对应。
4.  编辑WEB-INF\jboss-web.xml文件,打开<security-domain>部分注释;这里<security-domain>内容对应的security-domain对应{jboss_home}\server\default\conf\login-config.xml这个jaas配置文件里的某个application-policy。
如:
<security-domain>java:/jaas/jmx-console</security-domain>
在login-config.xml里对应有:
<application-policy  name  =  "jmx-console">
             <authentication>
                   <login-module  code="org.jboss.security.auth.spi.UsersRolesLoginModule"
                           flag  =  "required"  />
             </authentication>
</application-policy>
5.Ok!一切大功告成!重启jboss,就会出现你想要的输入username和password的  窗口

二、启动与关闭JBOSS应用服务器:
1. 启动JBOSS应用服务器:
l 双击桌面快捷方式。
l 打开命令行窗口,进入  %JBOSS_HOME%\bin,键入  run  ,回车。
2.关闭JBOSS应用服务器:
l 直接关闭JBOSS应用服务器;
l 另外打开一个命令行窗口,进入%JBOSS_HOME%\bin,键入shutdown  ?username=用户名    -password=密码,回车。

三、修改JBOSS应用服务器连接的数据库和端口:
1.在jboss?jboss-3.x---server---default---deploy下,mssql-service.xml文件中: 
<config-property  name=“ConnectionURL”  type=“java.lang.String”>
jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Northwind
</config-property>
<config-property  name=“UserName”  type=“java.lang.String”>sa</config-property>
<config-property  name=“Password”  type=“java.lang.String”>1</config-property>

其中:
①jdbc:microsoft:sqlserver://localhost:1433:  SQL2000端口是1433,如果数据库和WEB服务器分装于不同的机器,那么localhost要改成数据库服务器的ip地址;
②DatabaseName=Northwind:  数据库是Northwind,可以修改成另一个数据库;
③<config-property  name=“UserName”  ype=“java.lang.String”>sa</config-property>
   使用数据库的用户名sa
④<config-propertyname=“Password”type=“java.lang.String”>1</config-property>
   与用户名sa对应的密码:1

注:当我们的数据库、用户名或密码修改后,可在mssql-service.xml修改相应的项即可。

2. 使用JBOSS中间件时,默认的访问端口是8080.如何修改?
打开JBOSS目录-->jboss-3.0.8-->server-->default-->deploy-->jbossweb.sar-->meta-inf下的jboss-service.xml文件,搜索8080,将8080改为新的端口号,保存文件,重启应用服务器即可.访问时使用新的端口号.
<Call  name="addListener">
                 <Arg>
                   <New  class="org.mortbay.http.SocketListener">
                       <Set  name="Port"><SystemProperty  name="jetty.port"  fault="8000"/></Set>
                       <Set  name="MinThreads">10</Set>
                       <Set  name="MaxThreads">100</Set>
                       <Set  name="MaxIdleTimeMs">30000</Set>
                       <Set  name="LowResourcePersistTimeMs">5000</Set>
                   </New>
                 </Arg>
             </Call>



四、其它设置
1.WAR文件的部署
JBoss支持热部署,也就是war文件部署到服务器上后不需要重新启动JBoss(Tomcat不支这种特性)。war文件的部署很简单,直接将war文件拷贝到JBoss\server\default\deploy目录下即可。 
2.JBoss的目录结构
       bin:改目录包含各种脚本文件以及相关文件,前面已经用过run.bat和shutdown.bat两个批处理文件。
       client:存储配置信息和可能被Java客户端应用程序或外部Web容器用到的jar文件。
       docs:保存在JBoss中引用到的XML文件和DTD文件(这里也提供了在JBoss中如何写配置文件的例子)。该目录下有针对不通的数据库(如MySql、Oracle、SQL  Server、Postgres等)配置数据源的JCA配置文件。
         lib:这里存储运行JBoss微内核所需的jar文件。该目录下不要存储任何你自己的jar文件。
         server:这里的每一个子目录对应着一个服务器配置。该配置由运行脚本文件时的参数"-c  <配置名称>"来确定。在server目录下有三个配置例子,即all、default和minimal,每一个配置安装的服务都不一样。其中default下是缺省配置。
           minimal:仅加载启动JBoss所需的最少服务,如日志服务、JNDI和URL部署扫描器(发现新的部署),不包含Web容器、EJB和JMS。
           all:启动所有的服务,包括RMI/IIOP、集群服务和Web服务部署器(默认配置不会被加载)。
启动JBoss时,如果run.bat不带任何参数,则使用的配置是server/default目录下的配置。如果要以其它目录下的配置启动JBoss,可以使用如下参数:
run    -c    all
上述命令将以all目录下的配置信息启动JBoss。也可以在server目录下新建目录,按自己的需要写配置文件。
下面以default目录为例,介绍服务器配置的目录结构。
           conf:该目录下有指定核心服务的jboss-service.xml文件,也可以放其它服务配置的文件。
           data:该目录是JBoss内置的数据库Hypersonic存储数据的地方,也是JBossMQ(the  JBoss  implementation  of  JMS)存储相关信息的地方。
           deploy:这是部署J2EE应用程序(jar、war和ear文件)的位置,只需将相应文件拷贝到该目录下即可。该目录也用来热部署服务和JCA资源适配器。已经有一些服务部署到这个目录了,如jmx-console,你启动JBoss后即可访问。JBoss会周期性的扫描deploy目录,当有任何组件改变,JBoss会重新部署该程序。
           lib:存放服务器配置所需的jar文件,比如,你可以将JDBC驱动程序放在该目录下。
           log:存放日志信息。JBoss使用Jakarta  log4j包存储日志,在程序中你也可以直接使用该信息。
         tmp:存储在部署过程中解压时产生的临时文件。
     work:Tomcat编译JSP文件时的工作目录。
目录data、log、tmp和work在JBoss安装后并不存在,当JBoss运行时自动建立。
另外,连接数据库所用到的JDBC驱动程序要拷贝到JBoss_HOME\server\default\lib目录下。
3.  JBoss中的部署
   JBoss中的部署过程非常的简单、直接并且支持热部署。在每一个配置中,JBoss不断的扫描一个特殊的目录的变化:$JBOSS_HOME/server/config-name/deploy。
   你可以把下列文件拷贝到此目录下:
       *  任何jar库(其中的类将被自动添加到JBoss的classpath中)
       *  EJB  JAR
       *  WAR  (Web  Appliction  aRrchive)  注意默认情况下context为war名称.
       *  EAR  (Enterprise  Application  aRchive)
       *  包含JBoss  MBean定义的XML文件
       *  一个包含EJB  JAR、WAR或者EAR的解压缩内容,并以.jar、.war或者.ear结尾的目录。


附:如果你想要定义自己的服务器目录配置,可参照如下步骤:
根据JBOSS文档,我们可知道,实际上配置一个Server仅仅只需要将Default目录下所有文件拷到一个新目录下并重命名就可以了,同时修改相应的一些文件中的参数就可以了。做如下约定:
1、    重新指定一个run.bat快捷方式  runJwfm.bat 
复制一份<JBOSS_HOME>/BIN目录下的run.bat,并修改
"%JAVA%"  %JAVA_OPTS%  -classpath  "%JBOSS_CLASSPATH%"  org.jboss.Main  %*为
"%JAVA%"  %JAVA_OPTS%  -classpath  "%JBOSS_CLASSPATH%"  org.jboss.Main  ?c  jwfm  %*
2、修改相应参数文件
     <JBoss_Home>/Server/jwfm/conf  目录下文件jboss-service.xml修改动态部署时间:
<attribute  name="ScanPeriod">5000</attribute>  将5000调整到800,特稳定后调回5000




JBoss 的一些配置(端口,虚拟目录,虚拟主机,中文问题,数据库连接)
1、访问端口配置
编辑%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
将8080改为你希望访问的端口(8888)
    <!-- A HTTP/1.1 Connector on port 8080 -->
      <Connector port="8888" address="${jboss.bind.address}"
         maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
         emptySessionPath="true"
         enableLookups="false" redirectPort="8443" acceptCount="100"
         connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>

2、虚拟目录配置:
编辑%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
在</Host>之前增加:
<Context path="/test" docBase="F:\\test" debug="1" reloadable="true" override="true" crossContext="true"/>
其中path 为虚拟目录名,docBase为硬盘路径(可为绝对路径)reloadable为类变更时是否重新加载

3、解决附件汉字问题:
a.编辑
%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
在Connector 属性最后增加:URIEncoding="UTF-8"
<!-- A HTTP/1.1 Connector on port 8080 -->
  <Connector port="8888" address="$"
     maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
     emptySessionPath="true"
     enableLookups="false" redirectPort="8443" acceptCount="100"
     connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
b.页面处理
将生成的附件名称进行编码转换:
<%
String n2="Redhat9中文官方文档.rar";
n2=java.net.URLEncoder.encode(n2,"UTF-8");
%>
<a href="Redhat9">http://192.168.1.112:8080/zlsf/<%=n2%>">Redhat9中文官方文档</a>

4、解决汉字问题。
在:项目/WEB-INFweb.xml中增加:
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
其中
<param-value>GBK</param-value> 这里要设置GBK,而不是UTF8。为了解决标单提交后的中文问题。
filters.SetCharacterEncodingFilter  类文件在TOMCAT lib 目录下filters.jar文件中。
你只需要把filters.jar放入你应用目录下的LIB中即可。

5、虚拟主机配置
a.编辑
%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\server.xml
在 </Engine>之前添加:
<Host name="www.ytiic.com">
<Alias>www2.ytiic.com</Alias>--〉别名,通过这个名字可以访问www.ytiic.com下的应用。
<Alias>ytiic.com</Alias>--〉同上
<!-- Default context parameters -->
<DefaultContext cookies="true" crossContext="true" override="true"/>
</Host>
b.在这个目录下:%jboss-4.0.2%\server\default\deploy
创建一个目录:test.war(你的虚拟目录加.war)之后在其下创建WEB-INF目录
在WEB-INF下创建:jboss-web.xml 文件,内容如下:
<jboss-web>
<context-root>/</context-root>
<virtual-host>www.ytiic.com</virtual-host>
</jboss-web>
虚拟主机配置完成!
当jboss启动后,会自动对应2个配置文件中的虚拟主机名。

6、数据库配置:
去这个 %jboss-4.0.2%\docs\examples\jca 目录找一个你想用的数据库文件:
拷贝到%jboss-4.0.2%\server\default\deploy 下,打开编辑。
在%jboss-4.0.2%\server\default\deploy目录下自己建了一个文件:
test这个名字自己定义,后面需要保留。
test-ds.xml
内容如下:
< xml version="1.0" encoding="UTF-8" >
<!-- ===================================================================== -->
<!--                                                                       -->
<!--  JBoss Server Configuration                                           -->
<!--                                                                       -->
<!-- ===================================================================== -->
<!-- $Id: mssql-ds.xml,v 1.3 2004/09/15 14:37:40 loubyansky Exp $ -->
  <!-- ======================================================================-->
  <!-- New ConnectionManager setup for Microsoft SQL Server 2000  driver     -->
  <!-- You may download the latest Microsoft JDBC driver from *Microsoft*    -->
  <!-- http://msdn.microsoft.com/downloads/default.asp url=/downloads/sample.asp url=/MSDN-
FILES/027/001/779/msdncompositedoc.xml&frame=true -->
  <!-- ===================================================================== -->
<datasources>
  <local-tx-datasource>
    <jndi-name>test</jndi-name>
    <connection-url>jdbc:mysql://192.168.1.1/test</connection-url>
    <driver-class>org.gjt.mm.mysql.Driver</driver-class>
    <user-name>root</user-name>
    <password>password</password>
        <!-- sql to call when connection is created
        <new-connection-sql>some arbitrary sql</new-connection-sql>
        -->
      <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
      <min-pool-size>5</min-pool-size>
      <!-- The maximum connections in a pool/sub-pool -->
      <max-pool-size>20</max-pool-size>
        <!-- sql to call on an existing pooled connection when it is obtained from pool
        <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql>
        -->
      <!-- The time before an unused connection is destroyed -->
      <!-- NOTE: This is the check period. It will be destroyed somewhere between 1x and 2x this timeout after last use-->
      <!-- TEMPORARY FIX! - Disable idle connection removal, HSQLDB has a problem with not reaping threads on closed connections -->
      <idle-timeout-minutes>1</idle-timeout-minutes>
      <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
      <metadata>
         <type-mapping>mysql</type-mapping>
      </metadata>
  </local-tx-datasource>
</datasources>

数据库配置完成。
连接数据源名为:java:/test

=================================
所有配置完成!!

注意问题:
(1)、你的应用下的LIB库不要和%jboss-4.0.2%\server\default\lib 下的类库相冲突。
(2)、数据库配置参考:%jboss-4.0.2%\docs\examples\jca  下的文件

7、禁止文件目录列表
编辑%jboss-4.0.2%\server\default\deploy\jbossweb-tomcat55.sar\conf\web.xml
把listing设置为false

    <servlet>
        <servlet-name>default</servlet-name>
        <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
        <init-param>
            <param-name>debug</param-name>
            <param-value>0</param-value>
        </init-param>
        <init-param>
            <param-name>listings</param-name>
            <param-value>true</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

分享到:
评论

相关推荐

    httpd(负载均衡)+Jboss集群高可用部署配置文件

    2. 配置httpd:编辑httpd的配置文件(通常为`/etc/httpd/conf/httpd.conf`),启用mod_proxy、mod_proxy_balancer模块,然后添加负载均衡虚拟主机配置。 3. 设置负载策略:可以选择轮询、权重、最少连接数等不同的...

    JBoss实战:服务器配置指南

    - **虚拟主机**: 支持多个虚拟主机的配置,便于在同一台服务器上运行多个网站。 #### 6. 安全性配置 - **用户认证**: 支持多种认证机制,如基于表单的认证、基本认证等。 - **安全领域**: 通过定义安全领域...

    tomcat安装与配置.doc

    配置文件主要位于`conf`目录下,如`server.xml`、`web.xml`等,它们定义了服务器的行为、连接器、虚拟主机和应用上下文等。此外,Tomcat还提供了管理工具如`Manager App`和`Admin App`,用于监控和管理部署的应用。 ...

    tomcat-8.0.51-windows-x64

    - 修改`server.xml`来配置端口号(如HTTP的8080端口和HTTPS的8443端口)、连接器、虚拟主机等。 - 部署Web应用:可以通过将WAR文件放到`webapps`目录下,或者在`conf/Catalina/localhost`下创建一个XML配置文件来...

    Jetty中文手册

    如何配置虚拟主机(Virtual Hosts) 如何配置会话ID(Session IDs) 如何序列化会话(Session) 如何重定向或移动应用(Context) 如何让一个应用响应一个特定端口 使用JNDI 使用JNDI 在JNDI中配置数据源...

    Tomcat 的Apache服务

    3. **修改配置文件**:主要修改`conf/server.xml`,配置端口号、虚拟主机、上下文路径等。 4. **启动与停止**:通过bin目录下的`startup.sh`或`startup.bat`启动Tomcat,`shutdown.sh`或`shutdown.bat`停止服务。 ...

    apache-tomcat-7.0.56.rar

    由Apache Software Foundation维护,它是Java EE(现称为Jakarta EE)的一部分,但仅实现了Web容器的功能,不包含数据库连接池、全面的JMS支持等功能,因此常常与JBoss、GlassFish等更完整的应用服务器结合使用。...

    tomcat安装与配置[归纳].pdf

    2. **配置文件**:如server.xml、context.xml等,用于设置服务器端口、虚拟主机、应用上下文等。 3. **控制台管理**:Tomcat提供管理工具,如Manager App,允许用户通过Web界面管理应用的部署、启动、停止等操作。 ...

    apache-tomcat-6.0.26

    配置服务器端口、虚拟主机、连接池等关键参数。 2. **部署应用**:将Web应用的WAR文件(Web应用程序归档)放入Tomcat的`webapps`目录下,或者通过管理工具(如Tomcat Manager)进行部署。WAR文件会被自动展开为一个...

    tomcat-6.0.26

    - 修改`server.xml`:可以根据需求调整端口号(如HTTP的8080端口和AJP的8009端口),以及设置虚拟主机。 - 部署Web应用:可以将WAR文件复制到webapps目录下,或者通过管理工具如Manager App进行远程部署。 - 安全性...

    Tomcat 5.5 中文文档 (html)

    2. **服务器配置文件**:`conf/server.xml`是Tomcat的主要配置文件,定义了服务器的端口、服务、连接器、虚拟主机和Web应用等设置。 3. **Web应用部署**:可以通过将Web应用的WAR文件复制到webapps目录,或者在...

    孙卫琴Tomcat与JavaWeb开发技术详解

    2. **安装与配置Tomcat**:涵盖Windows、Linux和Mac等操作系统上的安装步骤,以及配置Tomcat的环境变量、修改服务器端口、设置虚拟主机等基础操作。 3. **Tomcat目录结构**:详述每个目录的作用,如WEB-INF、conf、...

    apache-tomcat-7.0.52.zip

    开发者可以通过修改`server.xml`配置文件来定制Tomcat的行为,例如设置端口号、添加虚拟主机、调整线程池大小等。此外,通过`context.xml`文件可以对单独的Web应用进行配置。 总的来说,Apache Tomcat 7.0.52是一个...

    Tomcat6安装版

    如果应用需要数据库连接池,可以在`conf/server.xml`的`&lt;GlobalNamingResources&gt;`中配置JNDI数据源。 7. **错误页面和欢迎文件** 在`conf/web.xml`中配置错误页面和默认欢迎文件,可以定制用户看到的错误信息和...

    apache-tomcat-7.0.106版本

    4. **配置**:在`conf`目录下的`server.xml`是Tomcat的主要配置文件,包括端口号、虚拟主机、数据源等设置。开发者可以修改此文件以适应特定的应用需求。 5. **安全管理**:Tomcat 7引入了用户认证和角色管理,通过...

    Tomcat最佳实践T.omcat最佳实践

    9. **基于名称的虚拟主机**:允许多个域名共享同一IP地址和端口,通过Host元素在server.xml中配置。 10. **TOMCAT IP访问控制**:可以通过配置访问控制列表限制特定IP的访问。 11. **TOMCAT访问日志记录**:日志...

    apache-tomcat-8.0.45-windows-x64.zip

    4. **配置服务器**:修改conf/server.xml文件,可以调整端口号、添加虚拟主机等。 **部署应用程序:** 1. **WAR 文件部署**:将应用程序的WAR文件放入webapps目录下,Tomcat会自动解压并部署。 2. **手动部署**:也...

    apche tomcat 5.5

    安装完成后,配置主要在`conf`目录下的`server.xml`文件中进行,如修改端口、定义虚拟主机等。 3. **目录结构**:Tomcat的目录结构包括`bin`(存放启动和停止脚本)、`conf`(存放配置文件)、`lib`(存放服务器...

Global site tag (gtag.js) - Google Analytics