码迷,mamicode.com
首页 > 其他好文 > 详细

tomcat的基本搭建

时间:2015-11-01 19:40:26      阅读:400      评论:0      收藏:0      [点我收藏+]

标签:tomcat web 服务

Tomcat是什么?

     Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP(java server page) 程序的首选。Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。Tomcat被JavaWorld杂志的编辑选为2001年度最具创新的java产品,可见其在业界的地位。


基本搭建:

    由于tomcat是提供jsp页面服务的,所有我们要安装jdk(java development kit)程序包,及java开发环境

官网:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

下载最新版:jdk-8u65-linux-x64.rpm  #实际环境以稳定为主,多采用1.6.1.7版本

这里我们下载的rpm包格式,所以直接安装即可:

[root@localhost ~]# rpm -ivhjdk-8u65-linux-x64.rpm 
Preparing...               ########################################### [100%]
       packagejdk1.8.0_65-2000:1.8.0_65-fcs.x86_64 is already installed #这里提示已经安装


安装完毕后,我们需要把java程序加入系统环境变量,方便以后使用:

[root@localhost jdk1.8.0_65]# vim/etc/profile.d/java.sh


加入以下两行:

export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH
[root@localhost jdk1.8.0_65]# source/etc/profile.d/java.sh  #重新读取文件
[root@localhost jdk1.8.0_65]# java  #直接键入java可以查看java帮助信息
[root@localhost jdk1.8.0_65]# java –version   #查看java版本信息
java version "1.8.0_65"
Java(TM) SE Runtime Environment (build1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build25.65-b01, mixed mode)


能看到版本信息,说明java环境安装完成

 

  1. 安装tomcat

    官网:

    http://tomcat.apache.org/download-70.cgi  下载tar.gz格式包到root目录

     

    [root@localhost ~]# tar xfapache-tomcat-7.0.65.tar.gz -C /usr/local/ #解压到/usr/local

    [root@localhost ~]# cd/usr/local/

    [root@localhost local]# ln-s apache-tomcat-7.0.65/ tomcat   #软链接至tomcat

    [root@localhost local]# cdtomcat/

    [root@localhost tomcat]#ls

    bin  conf lib  LICENSE  logs NOTICE  RELEASE-NOTES  RUNNING.txt temp  webapps  work

     

    接下来启动服务:

    启动tomcat服务也需要加入环境变量:

    [root@localhost tomcat]#vim /etc/profile.d/tomcat.sh 内容如下

    exportCATALINA_HOME=/usr/local/tomcat

    exportPATH=$CATALINA_HOME/bin:$PATH #CATALINA_HOME tomcat别名

    [root@localhost tomcat]#source /etc/profile.d/tomcat.sh  #重新读取脚本使其生效

    [root@localhost tomcat]#ls bin/

    bootstrap.jar                 configtest.bat    setclasspath.sh  tomcat-native.tar.gz

    catalina.bat                  configtest.sh     shutdown.bat     tool-wrapper.bat

    catalina.sh                   daemon.sh         shutdown.sh      tool-wrapper.sh

    catalina-tasks.xml            digest.bat        startup.bat      version.bat

    commons-daemon.jar            digest.sh         startup.sh       version.sh

    commons-daemon-native.tar.gz  setclasspath.bat  tomcat-juli.jar

     

    #默认定义了一些脚本,直接可以使用,

    例如:

    [root@localhost 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/latest

    Using CLASSPATH:      /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

    Server version: ApacheTomcat/7.0.65

    Server built:   Oct 9 2015 08:36:58 UTC

    Server number:  7.0.65.0

    OS Name:        Linux

    OS Version:     2.6.32-504.el6.x86_64

    Architecture:   amd64

    JVM Version:    1.8.0_65-b17

    JVM Vendor:     Oracle Corporation

     

    [root@localhost tomcat]#catalina.sh –help  #查看使用帮助信息

    Using CATALINA_BASE:   /usr/local/tomcat

    Using CATALINA_HOME:   /usr/local/tomcat

    Using CATALINA_TMPDIR:/usr/local/tomcat/temp

    Using JRE_HOME:        /usr/java/latest

    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 currentwindow

      run -security     Start in the current window with securitymanager

      start             Start Catalina in a separatewindow 

      start -security   Start in a separate window with securitymanager

      stop              Stop Catalina, waiting up to 5seconds for the process to end

      stop n            Stop Catalina, waiting up to nseconds for the process to end

      stop -force       Stop Catalina, wait up to 5 seconds andthen use kill -KILL if still running

      stop n -force     Stop Catalina, wait up to n seconds andthen 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 yourunning?

    Note: Waiting for theprocess to end and use of the -force option require that $CATALINA_PID isdefined

     

    [root@localhost tomcat]# catalina.shstart  #启动tomcat

    Using CATALINA_BASE:   /usr/local/tomcat

    Using CATALINA_HOME:   /usr/local/tomcat

    Using CATALINA_TMPDIR:/usr/local/tomcat/temp

    Using JRE_HOME:        /usr/java/latest

    Using CLASSPATH:      /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

    Tomcat started. #提示已经启动

     

    [root@localhost tomcat]# ss –tnlp  #已监听8080端口,而且为java,而不是tomcat

    LISTEN 0   100      :::8080

    Users:((“java“,5203,46)) 

     

    到本地浏览器输入:

    http://192.168.0.107:8080/  #ip+port 可以看到以下页面:

     

     

    Tomcat的目录结构

     [root@localhosttomcat]# ls 

    bin  conf lib  LICENSE  logs NOTICE  RELEASE-NOTES  RUNNING.txt temp  webapps  work

     

    bin: 脚本及启动时用到的类

    conf: 配置文件

    lib: 类库

    logs:日志文件

    temp:临时文件目录

    webapps:应用程序默认部署目录

    work:工作目录

                

    tomcat配置文件:

    [root@localhost tomcat]#ls conf/  
         catalina.properties  logging.properties  tomcat-users.xml
    catalina.policy  context.xml          server.xml          web.xml
     
    catalina.properties   #java属性的定义文件,设定类加载器路径等,以及一些JVM性能相关的调优参数
    logging.properties    #tomcat日志配置文件
    tomcat-users.xml: tomcat  #用户认证的账号和密码配置文件
    catalina.policy  # 当使用-security选项启动tomcat实例时会读取此配置文件,以实现其安全运行策略
    context.xml  #每个webapp都可以有专用的配置文件,这些配置文件通常位于webapp应用程序目录下的WEB-INF目录中,用于定义会话管理器,JDBC等,conf/context.xml是为个webapp提供默认配置
    server.xml  #用于定义tomcat体系结构,端口,集群,web应用,访问日志等功能
    web.xml  #每个为webapp”部署“之后才能被访问,此文件则用于为所有的webapp提供默认部署的相关配置 

     

    了解了各目录和配置文件后,手动添加一个应用程序来测试一下:

     

    创建webapp特有的目录结构

    提供webapp各文件

    创建jsp默认主页

          


  1. [root@localhost webapps]# pwd
    /usr/local/tomcat/webapps
    [root@localhost webapps]# mkdir -pv myapp/{lib,classes,WEB-INF,META-INF}#创建文件
    mkdir: created directory `myapp‘#存放webapp的主页文件
    mkdir: created directory `myapp/lib‘#此webapp私有类,被打包为jar格式类
    mkdir: created directory `myapp/classes‘#此webapp的私有类
    mkdir: created directory `myapp/WEB-INF‘#当前webapp私有资源目录,存放web.xml
    mkdir: created directory`myapp/META-INF‘#同上,但是存放自用的context.xml
    [root@localhost webapps]# vimmyapp/index.jsp  #编辑jsp主页文件内容:
    <%@ page language="java"%>
    <%@ pageimport="java.util.*" %>
     
    <html>
           <head>
                    <title>JSP TestPage</title>
           </head>
     
           <body>
                    <% out.println("Hello,world"); %>
           </body>
    </html>~



部署完成后,默认catalina引擎会自动部署,不需要手动重启,直接在浏览器输入测试:

 

可以看到helloword, 这样一个简单的jsp网页就完成了                     

 技术分享

 

回到tomcat主页后你会看到主页右侧有三个管理按钮,刚搭建完需要进行配置才可以使用:

 

               Server status   服务状态信息查看

         Manager App  webapp管理工具

          Host Manager  虚拟主机管理工具


鼠标单击会弹出授权页面需要输入用户名账号,这里直接点击取消就会跳入一个网页会有提示信息

 

这里提示我们如果设置用户名密码和一些设置用户权限的信息:

 

For example, to add the manager-gui roleto a user named tomcat with a password of s3cret, add thefollowing to the config file listed above.

<rolerolename="manager-gui"/>

<userusername="tomcat" password="s3cret"roles="manager-gui"/>

 

  • manager-gui - allows access to the HTML GUI and the status     pages

  • manager-script - allows access to the text interface and the     status pages

  • manager-jmx - allows access to the JMX proxy and the     status pages

  • manager-status - allows access to the status pages only

由此看到,要想使用这几个工具,需要做以下设置:

 

[root@localhost ~]# cd/usr/local/tomcat/conf/
[root@localhost conf]# ls
Catalina         catalina.properties  logging.properties  tomcat-users.xml
catalina.policy  context.xml          server.xml          web.xml
[root@localhost conf]# vim tomcat-users.xml#编辑用户配置文件

技术分享

 

 

此配置文件修改完成后默认不会立即生效,需要重启服务读取文件:

注:由于默认没有restart命令支持,所以只能先stop后,再start

[root@localhost conf]# 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/latest
Using CLASSPATH:      /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@localhost conf]# 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/latest
Using CLASSPATH:      /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started. #提示启动成功


[root@localhost conf]# ss –tnl  ##8080端口已经监听
LISTEN  0       100          :::8080         :::*


 

现在我们重新浏览器访问测试:

 技术分享

 

输入自己设置的用户名密码点击登陆即可进入管理界面:如下

技术分享 


可以看到显示出了完整的服务状态信息:

 

其中JVM里显示了内存信息:

 

Memory Pool 内存池
Eden Space  新生代

Survivor Space 存活区

Tenured Gen   年老代

Code Cache  代码缓存

Compressed Class Space 压缩类空间

Metaspace源数据空间

 

通常只需要前三个,后三个为非堆内存

 

点击Manager App  我们会看到各应用程序的管理页面:

技术分享 

 

Applications:  一下应用程序可以直接点击访问:

 

/ : 根目录,默认主页

/docs: tomcat 7自带的说明文档,可以了解各种使用语法

/examples:使用示例包括 Servlets JSPWebSocket

/host-mansger: 主机管理

/manager : 当前页

/myapp : 自行部署的jsp

 

Commands
Start   stop  reload undeploy(
解除部署)

 

除了这些应用链接,还可以通过Commands命令栏来控制,例如:

 

关闭自行部署的jsp/myappcommands命令选择stop,就可以看到running列显示为false了,接下来访问就会出错

技术分享 


重新点击start后,恢复正常:

 技术分享

 

 

往下可以设置热部署:

 技术分享

 

Context Path (required): 部署文件,如/myapp

XML Configuration file URL: XML配置文件路径,如 web.xml

WAR or Directory URL : WAR文件路径,可选择下方的选择文件直接指定

然后点击 Deploy即可进行热部署

 

Diagnostics  web application做诊断

Find leaks: 查询泄漏

SSL: 加密授权

 

Server Information 服务信息

 

选择第三项host manager,管理虚拟主机:

 

同样需要用户名密码,但是填入后发现提示错误,因为它是不同的应用程序,和前两项使用不同的策略,所以需要另行定义(同样看提示)

 技术分享

 

由此看来和前边的操作没有多大区别:

 

[root@localhost conf]# vim tomcat-users.xml  #编辑配置文件:

技术分享

 

这里我们新加了管理员admin-gui,并且在用户名密码的基础上新添加了admin-gui, 意思为

Admin-gui manager-gui使用同一个用户名和密码,实际情况自行定义。

 

[root@localhost conf]# catalina.sh stop  #同样的操作
[root@localhost conf]# catalina.sh start


 

浏览器测试:

技术分享

 

 

这样就可以根据自己的情况添加虚拟主机了,具体功能很简单就不细说了。。。

 

 

 


本文出自 “开源盛世” 博客,请务必保留此出处http://zhaohongfei.blog.51cto.com/6258685/1708431

tomcat的基本搭建

标签:tomcat web 服务

原文地址:http://zhaohongfei.blog.51cto.com/6258685/1708431

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!