大纲
一、Tomcat 基本配置
1.为Tomcat提供SysV脚本
2.catalina 脚本讲解
3.telnet 登录管理Tomcat
4.配置Tomcat虚拟主机
5.Tomcat图形管理接口
manager 管理应用程序的部署及监控
host-manager 虚拟主机的管理
6.部署JSP网站案例
布署JavaCenter Home(开源的SNS网站)
二、Nginx反向代理Tomcat服务器
1.Nginx将请求反向代理到后端Tomcat
2.Nginx将图片缓存到本地
3.Nginx将请求实现动静分离
注,实验环境说明,操作系统:CentOS 6.4 x86_64,软件版本:jdk-7u40、apache-tomcat-7.0.42、Nginx-1.4.2,博客中所用到的软件请到这里下载:http://yunpan.cn/QGBCLwrZnpLMS。
一、Tomcat 基本配置
1.为Tomcat提供SysV脚本
注,在上一篇博文中我们已经演示安装了Tomcat,这里我们就不在演示,不清楚的博友可以参考这篇博文,http://freeloda.blog.51cto.com/2033581/1299644,在上一篇博文中我们没有增加,SysV脚本,在这篇博文中我们来增加一下,下面我们就来具体演示一下。
1
2
3
4
5
6
7
8
9
10
|
[root@tomcat ~]
# vim /etc/init.d/tomcat
#!/bin/sh
# Tomcat init script for Linux.
#
# chkconfig: 2345 96 14
# description: The Apache Tomcat servlet/JSP container.
CATALINA_HOME=
/usr/local/tomcat
#注意你的脚本路径
export
CATALINA_HOME
# export CATALINA_OPTS="-Xms128m -Xmx256m"
exec
$CATALINA_HOME
/bin/catalina
.sh $*
|
下面我们来增加执行权限,并加入服务列表设置开机自启动,
1
2
3
|
[root@tomcat ~]
# chmod +x /etc/init.d/tomcat
[root@tomcat ~]
# chkconfig --add tomcat
[root@tomcat ~]
# chkconfig tomcat --list
|
tomcat 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
下面我们来启动一下Tomcat并测试一下,
1
2
3
4
5
6
|
[root@tomcat ~]
# service tomcat start
Using CATALINA_BASE:
/usr/local/tomcat
Using CATALINA_HOME:
/usr/local/tomcat
Using CATALINA_TMPDIR:
/usr/local/tomcat/temp
Using JRE_HOME:
/usr
Using CLASSPATH:
/usr/local/tomcat/bin/bootstrap
.jar:
/usr/local/tomcat/bin/tomcat-juli
.jar
|
查看一下启动的端口号,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
[root@tomcat ~]
# netstat -ntulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID
/Program
name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1044
/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1121
/master
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 12988
/sshd
tcp 0 0 127.0.0.1:6011 0.0.0.0:* LISTEN 13053
/sshd
tcp 0 0 :::8080 :::* LISTEN 13088
/java
tcp 0 0 :::22 :::* LISTEN 1044
/sshd
tcp 0 0 ::1:25 :::* LISTEN 1121
/master
tcp 0 0 ::1:6010 :::* LISTEN 12988
/sshd
tcp 0 0 ::1:6011 :::* LISTEN 13053
/sshd
tcp 0 0 ::ffff:127.0.0.1:8005 :::* LISTEN 13088
/java
tcp 0 0 :::8009 :::* LISTEN 13088
/java
|
用浏览器访问一下,
好了,到这里Tomcat的SysV脚本增加完成,下面我们来说一下catalina脚本。
2.catalina 脚本讲解
首先我们来查看一下这个脚本,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
[root@tomcat bin]
# catalina.sh -h
Using CATALINA_BASE:
/usr/local/tomcat
Using CATALINA_HOME:
/usr/local/tomcat
Using CATALINA_TMPDIR:
/usr/local/tomcat/temp
Using JRE_HOME:
/usr/java/jdk1
.7.0_40
Using CLASSPATH:
/usr/local/tomcat/bin/bootstrap
.jar:
/usr/local/tomcat/bin/tomcat-juli
.jar
Usage: catalina.sh ( commands ... )
commands:
debug Start Catalina
in
a debugger
debug -security Debug Catalina with a security manager
jpda start Start Catalina under JPDA debugger
run Start Catalina
in
the current window
run -security Start
in
the current window with security manager
start Start Catalina
in
a separate window
start -security Start
in
a separate window with security manager
stop Stop Catalina, waiting up to 5 seconds
for
the process to end
stop n Stop Catalina, waiting up to n seconds
for
the process to end
stop -force Stop Catalina, wait up to 5 seconds and
then
use
kill
-KILL
if
still running
stop n -force Stop Catalina, wait up to n seconds and
then
use
kill
-KILL
if
still running
configtest Run a basic syntax check on server.xml - check
exit
code
for
result
version What version of tomcat are you running?
Note: Waiting
for
the process to end and use of the -force option require that $CATALINA_PID is defined
|
注,从帮助上来看,这个脚本使用还是挺简单的。下面我们来说几个常用的选项,
catalina.sh
start 启动Tomcat
stop 关闭Tomcat
configtest 测试配置文件是否有错
version 查看Tomcat版本
下面我们就来具体演示一下,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
[root@tomcat ~]
# catalina.sh configtest
Using CATALINA_BASE:
/usr/local/tomcat
Using CATALINA_HOME:
/usr/local/tomcat
Using CATALINA_TMPDIR:
/usr/local/tomcat/temp
Using JRE_HOME:
/usr/java/jdk1
.7.0_40
Using CLASSPATH:
/usr/local/tomcat/bin/bootstrap
.jar:
/usr/local/tomcat/bin/tomcat-juli
.jar
九月 21, 2013 11:08:26 下午 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library
which
allows optimal performance
in
production environments was not found on the java.library.path:
/usr/java/packages/lib/amd64
:
/usr/lib64
:
/lib64
:
/lib
:
/usr/lib
九月 21, 2013 11:08:27 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler [
"http-bio-8080"
]
九月 21, 2013 11:08:27 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler [
"ajp-bio-8009"
]
九月 21, 2013 11:08:27 下午 org.apache.catalina.startup.Catalina load
信息: Initialization processed
in
1269 ms
|
注,使用configtest选项时,得关闭Tomcat,不然会报错。
启动Tomcat,
1
2
3
4
5
6
|
[root@tomcat ~]
# catalina.sh start
Using CATALINA_BASE:
/usr/local/tomcat
Using CATALINA_HOME:
/usr/local/tomcat
Using CATALINA_TMPDIR:
/usr/local/tomcat/temp
Using JRE_HOME:
/usr/java/jdk1
.7.0_40
Using CLASSPATH:
/usr/local/tomcat/bin/bootstrap
.jar:
/usr/local/tomcat/bin/tomcat-juli
.jar
|
关闭Tomcat,
1
2
3
4
5
6
|
[root@tomcat ~]
# catalina.sh stop
Using CATALINA_BASE:
/usr/local/tomcat
Using CATALINA_HOME:
/usr/local/tomcat
Using CATALINA_TMPDIR:
/usr/local/tomcat/temp
Using JRE_HOME:
/usr/java/jdk1
.7.0_40
Using CLASSPATH:
/usr/local/tomcat/bin/bootstrap
.jar:
/usr/local/tomcat/bin/tomcat-juli
.jar
|
查看Tomcat版本,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
[root@tomcat ~]
# catalina.sh version
Using CATALINA_BASE:
/usr/local/tomcat
Using CATALINA_HOME:
/usr/local/tomcat
Using CATALINA_TMPDIR:
/usr/local/tomcat/temp
Using JRE_HOME:
/usr/java/jdk1
.7.0_40
Using CLASSPATH:
/usr/local/tomcat/bin/bootstrap
.jar:
/usr/local/tomcat/bin/tomcat-juli
.jar
Server version: Apache Tomcat
/7
.0.42
Server built: Jul 2 2013 08:57:41
Server number: 7.0.42.0
OS Name: Linux
OS Version: 2.6.32-358.el6.x86_64
Architecture: amd64
JVM Version: 1.7.0_40-b43
JVM Vendor: Oracle Corporation
|
好了,catalina脚本,我们就说到这里了,下面我们来说一下telnet管理Tomcat。
3.telnet 登录管理Tomcat
注,在说telnet管理Tomcat之前,我们得先看一下默认的配置文件,这里面定义了默认的管理端口,
1
2
|
[root@tomcat ~]
# vim /usr/local/tomcat/conf/server.xml
|
说明,定义了一个管理端口为8005,我们可以用telnet直接登录进本机的8005端口,来执行SHUTDOWN命令,来关闭Tomcat实例。下面我们来具体演示一下,
先安装telnet客户端,
1
|
|
下面我们一测试并查看,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
|
注,大家可以看到Tomcat服务器已经关闭。好了,telnet管理我们就说到这里,下面我们来说一下,Tomcat虚拟主机的配置。
4.配置Tomcat虚拟主机
注,在说Tomcat虚拟主机之前,咱们来详细的看看默认的配置文件,虽然在上一篇博客中全部有讲解,在这篇博客中我还是再和大家简单说一下,下面是默认配置文件。大家可以看到,绝大部分的配置文件是注释,包含在、全是注释。下面我们就来具体的看看,注释我们就不说了,说具体的定义的内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
|
|
好了,在这里我们又简单的说明一下,配置文件下面我们就来具体演示一下怎么配置虚拟主机。
首先,我们来修改一下配置文件,
[root@tomcat conf]# vim server.xml
#增加下面几行
|
|
接下来我们来创建文档目录与测试页面,
|
|
<
head
>