配置 Tomcat 6.0

王朝学院·作者佚名  2011-05-15
窄屏简体版  字體: 小  |  中  |  大  |  超大  

1. 从 http://tomcat.apache.org 下载 tomcat 6 的 zip 包版本。

2. 解压到 C:\Tomcat6.0 (选取一个简单的目录名,有利于配置)

3. 打开命令提示符 cmd.exe ,进入目录 C:\Tomcat6.0\bin ,进行服务安装。

(已有的 Tomcat 4.0 服务,已占用了 Apache Tomcat 这个 "服务显示名",因此需要修改 service.bat 这个文件,把里面的 "Apache Tomcat" 这个服务显示名改为 "Apache Tomcat 6" 。)

执行安装:

C:\Tomcat6.0\bin> service install

4. 修改 java_HOME 环境变量。“我的电脑”=>“属性”=>“高级”=>“环境变量”。

要求 JAVA_HOME 指向 jdk1.5 或 jdk1.6

5. 修改配置,改变 web 所在目录。打开 conf/server.xml ,在 Host 内添加 Context :

<Context path="" docBase="D:/Inetpub/wwwroot"></Context>

6. 添加数据库连接池。server.xml 中在 Context 内添加 Resource :

<Resource name="jdbc/testDB" auth="Container" type="javax.sql.DataSource"

maxActive="100" maxIdle="30" maxWait="10000"

username="sa" passWord="ok" driverClassName="sun.jdbc.odbc.JdbcOdbcDriver"

url="jdbc:odbc:DRIVER=SQL Server;UID=user;PWD=test;DATABASE=test_db;SERVER=127.0.0.1" />

(后来发现,用 jdbc.odbc 时,同一个 conn 不能同时创建多个 statement 。需要另一个 jdbc 驱动才可以,driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test_db;" )

WEB-INF/web.xml 中,在 web-app 内添加 resource-ref :

<resource-ref>

<description>Datasource</description>

<res-ref-name>jdbc/testDB</res-ref-name>

<res-type>javax.sql.DataSource</res-type>

<res-auth>Container</res-auth>

</resource-ref>

在 jsp 代码中,添加:

<%@page import="javax.naming.*"%>

<%@page import="javax.sql.*"%>

<%@page import="java.sql.*"%>

<%

Context ctx = new InitialContext();

DataSource ds = (DataSource)ctx.lookup("java:/comp/env/jdbc/testDB");

Connection conn = ds.getConnection();

//etc.

conn.close();

%>

7. 与 IIS 集成。

(1) 在 C:\Tomcat6.0 下创建目录 jakarta2 ,将 isapi_redirector2.dll 放入该目录。

(2) 创建文本文件 C:\Tomcat6.0\conf\workers2.PRoperties ,内容为:

[shm]

file=C:/tomcat6.0/logs/jk2.shm

size=1048576

# Example socket channel, override port and host.

[channel.socket:localhost:8009]

port=8009

host=127.0.0.1

# define the worker

[ajp13:localhost:8009]

channel=channel.socket:localhost:8009

# Uri mapping

[uri:/*.jsp]

[uri:/servlet/*]

worker=ajp13:localhost:8009

(3) 创建注册表文件,内容为:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\2.0]

"workersFile"="C:\\Tomcat6.0\\conf\\workers2.properties"

"extensionUri"="/jakarta2/isapi_redirector2.dll"

"logLevel"="error"

"serverRoot"="C:\\Tomcat6.0\\"

(4) 创建 IIS 虚拟目录: /jakarta2 ,实际绝对目录为 C:\Tomcat6.0\jakarta2

目录权限为:“脚本和可执行文件”

(5) 创建 ISAPI 过滤器。IIS管理中站点属性 => ISAPI 筛选器,添加:

筛选器名称: jakarta2

可执行文件: C:\Tomcat6.0\jakarta2\isapi_redirector2.dll

(重新启动“World Wide Web Publishing”服务后,才能看到效果)

8. 牢记惨痛经验。( ISAPI 往往容易出错,并且不易调试。)

在 IIS 虚拟目录中,要注意开放可执行文件权限。

如果文件格式是 NTFS ,要注意 /jakarta 的实际目录及 /conf 目录的“安全”设置,要让 User 能够“读取、运行、写入”,通常就是 C:\tomcat6.0 的权限 => 替换子文件夹 权限。因为从其他地方复制过来的文件,不知道保留了什么权限。

在 Windows 2003 中,IIS 管理器中专门有个 Web 服务扩展 管理,把 redirector.dll 添加为允许。

装好 tomcat 6 服务之后,采用直接执行 startup.bat 能启动,但开启服务却不能启动。原因在于,使用服务启动时,采用原来的 jdk1.4 ,而直接启动时,采用的是环境变量 JAVA_HOME 里面的 jdk 1.6 。因此,需要使用 tomcat 6 服务管理界面,把 tomcat 6 使用的 jdk 设为 1.6 。

9. Tomcat 6 与 Tomcat 4 在 <%@ include file="inc.jsp" %> 时的区别:

在 tomcat 4 中,被包含的文件的文件编码,以包含它的文件编码为准,换句话说,是按“字节”包含。

在 tomcat 6 中,被包含的文件需要自己指定编码,换句话说,是按“字符”包含。而自己指定编码的

<%@ page pageEncoding="GBK" %> 在 tomcat 4 中会以“多次指定编码”而报错。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航