Tomcat杂记(1)

news/2025/2/26 6:18:07

Tomcat

Tomcat基础

1、安装jdk

1.1 安装jdk

[root@master1 tomcat]# ls
apache-tomcat-8.0.41.tar.gz  jdk-8u121-linux-x64.rpm

安装jdk
[root@master1 tomcat]# rpm -ivh jdk-8u121-linux-x64.rpm

1.2 设置java环境变量

[root@master1 jdk1.8.0_121]# vim /etc/profile.d/java.sh

export JAVA_HOME=/usr/java/latest
export PATH=$JAVA_HOME/bin:$PATH

[root@master1 jdk1.8.0_121]# . /etc/profile.d/java.sh
[root@master1 jdk1.8.0_121]# echo $PATH
/usr/java/latest/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@master1 jdk1.8.0_121]# 

1.3 显示java版本版本号

[root@master1 jdk1.8.0_121]# java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

2、安装tomcat

2.1 解压tomcat

[root@master1 tomcat]# tar xf apache-tomcat-8.0.41.tar.gz -C /usr/local/

2.2 创建软连接

[root@master1 local]# ln -sv apache-tomcat-8.0.41 tomcat
‘tomcat’ -> ‘apache-tomcat-8.0.41’
[root@master1 local]# ll
total 0
drwxr-xr-x  9 root root 149 Jan 16 22:47 apache-tomcat-8.0.41
lrwxrwxrwx  1 root root  20 Jan 16 22:49 tomcat -> apache-tomcat-8.0.41
[root@master1 local]# 

2.3 设置tomcat目录

[root@master1 tomcat]# vim /etc/profile.d/tomcat.sh

export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH

重载环境变量:
[root@master1 tomcat]# . /etc/profile.d/tomcat.sh
[root@master1 tomcat]# echo $PATH
/usr/local/tomcat/bin:/usr/java/latest/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@master1 tomcat]# 

显示tomcat版本号:
[root@master1 tomcat]# version.sh 
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: Apache Tomcat/8.0.41
Server built:   Jan 18 2017 22:19:39 UTC
Server number:  8.0.41.0
OS Name:        Linux
OS Version:     3.10.0-327.el7.x86_64
Architecture:   amd64
JVM Version:    1.8.0_121-b13
JVM Vendor:     Oracle Corporation
[root@master1 tomcat]# 

由于所有脚本集中在catalina.sh,可以通过在catalina传递脚本参数,调用其他shell
[root@master1 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: Apache Tomcat/8.0.41
Server built:   Jan 18 2017 22:19:39 UTC
Server number:  8.0.41.0
OS Name:        Linux
OS Version:     3.10.0-327.el7.x86_64
Architecture:   amd64
JVM Version:    1.8.0_121-b13
JVM Vendor:     Oracle Corporation
[root@master1 tomcat]# 

2.4 启动tomcat并查看默认是否监听8080端口

[root@master1 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/latest
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
[root@master1 tomcat]# 

[root@master1 tomcat]# ss -tnlp | grep 80
LISTEN     0      100         :::8009                    :::*                   users:(("java",pid=23581,fd=52))
LISTEN     0      100         :::8080                    :::*                   users:(("java",pid=23581,fd=47))

[root@node1 ~]# curl -I http://10.201.106.131:8080
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Mon, 16 Jan 2017 15:17:12 GMT

[root@node1 ~]# 

手动添加一个测试应用程序

1、创建webapp特有的目录结构

[root@master1 webapps]# mkdir myapp/{lib,classes,WEB-INF,META-INF} -pv
mkdir: created directory ‘myapp’
mkdir: created directory ‘myapp/lib’
mkdir: created directory ‘myapp/classes’
mkdir: created directory ‘myapp/WEB-INF’
mkdir: created directory ‘myapp/META-INF’
[root@master1 webapps]# tree myapp/
myapp/
├── classes
├── lib
├── META-INF
└── WEB-INF

4 directories, 0 files
[root@master1 webapps]# 

1.1 制作测试页

    [root@master1 webapps]# vim myapp/index.jsp

    <%@ page language="java" %>
    <%@ page import="java.util.*" %>
    <html>
        <head>
                <title>JSP Test Page</title>
        </head>
        <body>
                <% out.println("Hello,world."); %>
        </body>
    </html>

访问测试:
[root@node1 ~]# curl http://10.201.106.131:8080/myapp/index.jsp

<html>
    <head>
        <title>JSP Test Page</title>
    </head>
    <body>
        Hello,world.

    </body>
</html>

[root@master1 tomcat]# tree work
work
└── Catalina
    └── localhost
        ├── docs
        ├── examples
        ├── host-manager
        ├── manager
        │   └── org
        │       └── apache
        │           └── jsp
        │               └── WEB_002dINF
        │                   └── jsp
        │                       ├── _401_jsp.class
        │                       └── _401_jsp.java
        ├── myapp
        │   └── org
        │       └── apache
        │           └── jsp
        │               ├── index_jsp.class
        │               └── index_jsp.java
        └── ROOT
            └── org
                └── apache
                    └── jsp
                        ├── index_jsp.class
                        └── index_jsp.java

19 directories, 6 files
[root@master1 tomcat]# 

3、创建用户访问tomcat的管理程序

[root@master1 conf]# pwd
/usr/local/tomcat/conf
[root@master1 conf]# vim tomcat-users.xml 

  <role rolename="manager-gui"/>
  <user username="tomcat" password="tomcat" roles="manager-gui"/>

重启服务,间隔操作:5秒:
[root@master1 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@master1 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@master1 conf]# 

4、创建访问图片界面【Host Manager】的账户

/usr/local/tomcat/conf
[root@master1 conf]# vim tomcat-users.xml 

  <role rolename="admin-gui"/>
  <user username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>

重启tomcat
[root@master1 bin]# 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@master1 bin]# 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@master1 bin]# 

5、配置server.xml

5.1 备份server.xml

5.2 通过8005端口关闭虚拟机实例

通过8005端口关闭虚拟机实例:
[root@master1 ~]# ss -tnl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128           *:22                        *:*                  
LISTEN      0      100    127.0.0.1:25                        *:*                  
LISTEN      0      100          :::8009                     :::*                  
LISTEN      0      100          :::8080                     :::*                  
LISTEN      0      128          :::22                       :::*                  
LISTEN      0      100         ::1:25                       :::*                  
LISTEN      0      1      ::ffff:127.0.0.1:8005                     :::*                  
[root@master1 ~]# 
[root@master1 ~]# 
[root@master1 ~]# 
[root@master1 ~]# telnet 127.0.0.1 8005
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SHUTDOWN
Connection closed by foreign host.
[root@master1 ~]# ss -tnl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port              
LISTEN      0      128           *:22                        *:*                  
LISTEN      0      100    127.0.0.1:25                        *:*                  
LISTEN      0      128          :::22                       :::*                  
LISTEN      0      100         ::1:25                       :::*                  
[root@master1 ~]# 

5.3

转载于:https://blog.51cto.com/zhongle21/2088676


http://www.niftyadmin.cn/n/543239.html

相关文章

Mac Android Apk反编译

转自&#xff1a;https://www.cnblogs.com/typing/p/7780017.html 在mac os系统上反编译android apk&#xff0c;首先需要准备好以下3个文件&#xff1a; 1、apktool&#xff1a;https://ibotpeaches.github.io/Apktool/install/ 2、dex2jar&#xff1a;https://github.co…

通过使用浏览器对象模型,输出当前浏览器窗口中打开的文档的URL信息,并将显示在窗口中。...

<script type"text/javascript">window.document.write("这个网页文件来自&#xff1a;".bold());window.document.write(window.location.toString());</script>转载于:https://www.cnblogs.com/clear93/p/4624174.html

Android安全之---应用防dex2jar原理及实现

转自&#xff1a;https://www.jianshu.com/p/0306cb947d7a 一、反编译某平台代码 最近在看某外卖平台的代码&#xff0c;发现某外卖平台最新版本版本无法正常的通过dex2jar工具将dex转换出Java源代码&#xff0c;在转换过程中会提示出错&#xff0c;如图&#xff1a; dex2jar…

中企通信亮相WRE制造业CIO峰会2017

由WRE CIO Alliance与Trueadvisor联合主办的“WRE制造业CIO峰会2017”在2017年6月22日-23日在上海锦江汤臣洲际大酒店成功举办&#xff0c;作为WRE首席信息官系列峰会之一的制造业CIO峰会将汇集超过250世界领先制造业的公司CIO, CTO和IT高管&#xff0c;其中包括全球顶尖IT研究…

java中的sleep()和wait()的区别

转自&#xff1a;https://www.cnblogs.com/hongten/p/hongten_java_sleep_wait.html 对于sleep()方法&#xff0c;我们首先要知道该方法是属于Thread类中的。而wait()方法&#xff0c;则是属于Object类中的。 sleep()方法导致了程序暂停执行指定的时间&#xff0c;让出cpu该其…

浅谈软件创新之处

微信小游戏——跳一跳 作为一个PC端的小程序&#xff0c;微信跳一跳曾一度被刷爆朋友圈&#xff0c;成为最受欢迎的小游戏&#xff0c;它无疑是很成功的。游戏简单&#xff0c;容易上手。那么它如此受欢迎的原因或者说它和其他游戏相比优势和创新在何处呢&#xff1f;首先&…

[TypeScript] TypeScript对象转JSON字符串范例

[TypeScript] TypeScript对象转JSON字符串范例 Playground http://tinyurl.com/njbrnrvSamples class DataTable {public columns: Array<string> new Array<string>();public rows: Array<DataRow> new Array<DataRow>(); }class DataRow {public c…

自定义RecyclerView,实现ListView、GridView、ViewPager功能

CommonRecyclerView 通用的RecyclerView&#xff0c;实现了RecyclerView、GridView、ViewPager功能 How to To get a Git project into your build: Step 1. Add the JitPack repository to your build file gradle maven sbt leiningen Add it in your root build.gradle …