tomcat 详解
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器
环境:centos6.532位
JavaCenter_Home_GBK.zip
apache-tomcat-7.0.42.tar.gz
jdk-7u45-linux-i586.rpm
先安装jdk
1
2
3
4
5
# yum --disablerepo=\* --enablerepo=c6-media localinstall jdk-7u45-linux-i586.rpm –y
# rpm -ql jdk |less
把/usr/java/jdk1.7.0_45 目录定义为环境变量
# vim /etc/profile
# . /etc/profile
安装tomcat直接展开即可
1
2
3
4
5
6
7
8
9
10
11
12
# tar -zxvf apache-tomcat-7.0.42.tar.gz -C /usr/local/
# cd /usr/local/
# ln -s apache-tomcat-7.0.42/ tomcat
# cd tomcat/
# ./catalina.shstart
Using CATALINA_BASE: /usr/local/tomcat **catalina 的运行目录
Using CATALINA_HOME: /usr/local/tomcat **catalina安装目录
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
# netstat -tupln |less
第一次打开有点慢,这是因为jsp是要做中间翻译、缓存的,又叫字节码,这里不是本地缓存。
在work目录下可查看内容
/usr/local/tomcat
其中.class文件就是翻译后的字节码
Tomcat的配置文件
1
2
/usr/local/tomcat/conf
# vim server.xml
案例实践:
实现功能:通过访问192.168.3.1000:8080 /test显示hello word 页面
1
2
3
4
5
6
# cd /usr/local/tomcat/webapps/
# mkdir test
# cd test/
# mkdir -pv WEB_INF/{lib,classes}**Java运行环境需求的目录
# vim index.jsp
编辑页面
# vim /etc/profile
# . /etc/profile
# catalina.sh start
案例2
虚拟目录形式在www目录下实现访问
# mkdir -pv /www/webapps
# mv webapps/test/ /www/webapps/
1
2
# catalina.sh stop
# catalina.sh start
发现也是可以的
案例3
架设Java的小论坛
JavaCenter_Home_GBK.zip
1
2
3
4
5
6
7
8
9
10
# yum --disablerepo=\* --enablerepo=c6-media install mysql mysql-server –y
# service mysqld start
# chkconfig mysqld on
# mysqladmin -u root -p password '123'
mysql> create database jcent;
# unzip JavaCenter_Home_GBK.zip
# cd JavaCenter_Home_2.0_GBK/
# mv upload/ /usr/local/tomcat/webapps/jcent
案例4
主机形式访问,单独站点
需要写一个单独的host,指明站点目录,还有日志文件
改变服务器端口
管理页面按钮
Server status状态查看、管理,需要用户名和口令的,
Manager主要管理像虚拟目录、物理目录的那些个应用
Host manager 主要管理站点
点击取消,出现操作帮助
打开配置文件
# vim /usr/local/tomcat/conf/tomcat-users.xml
添加一个角色,账户和密码
# catalina.sh stop
# catalina.sh start
已经可以访问并进行管理了
Host manager 管理
只需在配置文件中添加新的角色
已经可以进行管理了
案例5
因为tomcat的安全性非常低,几乎没有什么安全设置,为了tomcat的安全,只要在tomcat的前端架设一台Apache,只要Apache反向代理给tomcat即可,
Apache和tomcat结合的方法
代理:mod_proxy
mod_proxy_http----超文本------->8080
mod_proxy_ajp ----二进制------->8009
mod_balancer**实现负载均衡
Apache的配置选项
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
./configure\
--prefix=/usr/local/apache\
--sysconfdir=/etc/httpd \
--enable-so \
--enable-ssl\
--enable-rewrite\
--with-apr=/usr/local/apr/bin/apr-1-config \
--with-apr-util=/usr/local/apr-util/bin/apu-1-config \
--with-pcre\
--with-z\
--enable-mpms-shared=all \
--enable-proxy \
--enable-proxy-http \
--enable-proxy-ajp \
--enable-proxy-balancer
配置反向代理
在httpd.conf 的全局段或虚拟主机中添加如下内容
ProxyViaoff
ProxyRequestsoff 关闭正向代理【启用反向,一定要关闭正向】
ProxyPreservehost on ***真实代理,将客户端访问的URL完全的传递给后方的tomcat
访问控制
ProxyPass/ ajp://后方服务器地址:8009/部分
ProxyPassReverse/ ajp://后方服务器地址:8009/
将上述两句写入虚拟主机中
页:
[1]