安装Tomcat到Linux(源码)
运行环境
系统版本:CentOS Linux release 7.3.1611
软件版本:Tomcat-9.0.11
硬件要求:无
安装过程
1、安装YUM-EPEL存储库
YUM-EPEL存储库由EPEL官网提供。
[root@localhost ~]# yum -y install epel-release.noarch
2、安装依赖
我这里使用的OpenJDK,建议大家采用JDK。
[root@localhost ~]# yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
[root@localhost ~]# java -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
3、从官网下载Tomcat
下载Code(核心)版本。
[root@localhost ~]# wget http://mirrors.hust.edu.cn/apache/tomcat/tomcat-9/v9.0.12/bin/apache-tomcat-9.0.12.tar.gz
4、配置环境变量
有时候我们要使用Tomcat调试模式的时候可能会需要用到它。
[root@localhost ~]# vim /etc/profile
export JAVA_HOME=/usr
[root@localhost ~]# source /etc/profile
5、安装Tomcat
[root@localhost ~]# mkdir /usr/local/tomcat
[root@localhost ~]# tar xzvf apache-tomcat-9.0.11.tar.gz -C /usr/local/tomcat
6、配置Tomcat服务
配置Tomcat服务,将Tomcat服务的管理交给系统的Systemctl命令管理。
[root@localhost ~]# vim /usr/lib/systemd/system/tomcat.service
[Unit]
Description=tomcat
[Service]
Type=forking
ExecStart=/usr/local/tomcat/apache-tomcat-9.0.11/bin/catalina.sh start
ExecStop=/usr/local/tomcat/apache-tomcat-9.0.11/bin/catalina.sh stop
ExecReload=
[Install]
WantedBy=multi-user.target
7、配置Tomcat
若你想通过端口区分访问到不同的WEB站点,则复制多个"<Server>"配置设置不同端口即可。若通过域名方式区分访问到不同的WEB站点,则复制多个"<host>"配置设置不同的域名和要发布的网站根目录即可。
[root@localhost ~]# vim /usr/local/tomcat/apache-tomcat-9.0.11/conf/server.xml
<?xml version="1.0" encoding="UTF-8"?>
#==服务器配置==#
<Server port="8005" shutdown="SHUTDOWN">
#设置用于管理者通过"telnet"远程关闭Tomcat主服务器进程的操作端口和命令,建议修改。
# port 设置连接端口。
# shutdown 设置关闭Tomcat主服务进程的操作命令。
...
<Service name="Catalina">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
#设置一个用于处理HTTP请求的连接器。
# port 设置接受HTTP请求的端口。
# protocol 设置要使用的HTTP协议。
# connectionTimeout 设置连接超时时间,单位为毫秒。
# redorectPort 设置重定向端口,当接受到了一个HTTPS的请求,将其重定向到该端口上。
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
#设置一个用于处理AJP请求的连接器。当Tomcat与其他WEB服务器集成到一起使用时,则使用这个连接器传输
#效率较高,AJP是一个定向包协议,用于使用二进制格式的方式来传输可读性的文件数据。一般用于
#APACHE+Tomcat负载均衡时使用的协议。
# port 设置端口。
# protocal 设置AJP协议。
# redirectPort 设置重定向端口,当接受到了一个HTTPS的请求,将其重定向到该端口上。
<Engine name="Catalina" defaultHost="localhost">
#设置核心引擎配置。
# name 设置引擎名字。
# defaultHost 设置默认的WEB站点,在引擎中必须存在一个该项配置的WEB虚拟主机(WEB站点)。
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
################
#==WEB站点配置==#
################
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
#设置WEB站点,一个WEB虚拟主机。
# name 设置虚拟主机名,可以设置为是一个域名。
# appBase 设置WEB站点工作根目录。
# unpackWARs 设置是否自动解压WAR包,"true" or "false"。
# autoDeploy 设置是否自动部署WEB应用,"true" or "false"。
<Context docBase="test" path="/" reloadable="true">
#设置WEB站点下的WEB应用。
# docBase 设置根目录下WEB应用目录路径,WAR包的名字,或者是一个已解压的WEB应用目录。
# path 设置访问应用要使用的URI路径,根或者为空表示访问域名即访问到该WEB应用。
# reloadable 设置当应用包发生变化时是否自动重载应用,"true" or "false"。
<WatchedResource>WEB-INF/web.xml</WatchedResource>
#设置要监视的资源文件路径,当文件发生变化则会从新加载WEB应用。"web.xml"是一个WEB应
#用的主配置文件,每个JAVA-WEB应用都会有。
</Context>
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
</Engine>
</Service>
</Server>
8、创建一个JSP测试页
[root@localhost ~]# mkdir /usr/local/tomcat/apache-tomcat-9.0.11/webapps/test
[root@localhost ~]# vim /usr/local/tomcat/apache-tomcat-9.0.11/webapps/test/index.jsp
<html>
<head>
<title> hello world!</title>
</head>
<body>
<% out.println("hello world!"); %>
</body>
</html>
9、启动Tomcat
这边我们可以启动Tomcat先用命令"catalina.sh run"测试运行一下,是否可正常运行,若Tomcat运行不正常则会打印错误信息。
[root@localhost ~]# /usr/local/tomcat/apache-tomcat-9.0.11/bin/catalina.sh run
05-Sep-2018 21:29:53.410 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 7882 ms
[root@localhost ~]# systemctl start tomcat
[root@localhost bin]# netstat -lnupt |grep java
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 72010/java
tcp6 0 0 :::8009 :::* LISTEN 72010/java
tcp6 0 0 :::8080 :::* LISTEN 72010/java
12、访问测试
浏览器输入访问:http://server_name:port。
13、其他说明
默认情况下,Tomcat安装完成后在"webapps"目录下会自带四个WEB应用:docs(帮助文档)、examples(模板应用)、host-manger(主机管理)、manger(管理)。
我们可以通过访问"docs"查看如何使用Tomcat,以及对它的一些配置相关。
我们可以通过访问"mamger"查看Tomcat服务器运行状态,以及通过图形化的方式灵活的部署WEB应用。
安装Tomcat到Linux(源码)的更多相关文章
- Linux源码安装JDK1.8
Linux源码安装Java 1.到官网下载 jdk-8u131-linux-x64.tar.gz 官网地址:http://www.oracle.com/technetwork/java/javase/ ...
- Debian 安装Linux源码
参考: http://blog.chinaunix.net/uid-20683355-id-1895778.html http://www.linuxdiyf.com/viewarticle.php? ...
- mysql-5.5 for linux源码安装
mysql-5.5 for linux源码安装 1.使用Yum安装依赖软件包 # yum install -y gcc gcc-c++ gcc-g77 autoconf automake bison ...
- 转载 :Linux有问必答:如何在Debian或Ubuntu上安装完整的内核源码
http://linux.cn/article-5015-1.html 问题:我需要为我的Debian或Ubuntu下载并安装完整树结构的内核源码以供编译一个定制的内核.那么在Debian或Ubunt ...
- linux源码安装mysql,shell编程学习,ubuntu
一.mysql安装 以源码安装的方式编译和安装Mysql 5.6. 1.卸载旧版本 rpm -qa | grep mysql 检查是否有旧版本 查询结果:mysql-libs-5.1.73-7.el6 ...
- 『学了就忘』Linux软件包管理 — 47、Linux源码包的安装和卸载
目录 1.源码包安装服务的注意事项 2.源码包安装服务的过程 3.源码包安装服务的删除 4.源码包安装服务的启动 5.源码包安装服务的关闭 1.源码包安装服务的注意事项 (1)安装服务选择哪种软件包? ...
- Linux源码安装RabbitMQ高可用集群
1.环境说明 linux版本:CentOS Linux release 7.9.2009 erlang版本:erlang-24.0 rabbitmq版本:rabbitmq_server-3.9.13 ...
- Linux源码包安装程序
★安装OS时,建议提前安装开发组件 CentOS 6:Development Tools.Server Platform DevelopmentCentOS 7:Development Tools.D ...
- Linux源码包安装和脚本安装
能够先 vi INSTALL 看看安装过程. 1.源码包安装 2.脚本安装
- Linux 源码包安装过程
安装准备 安装gcc编译器 下载源码包 源代码保存位置:/usr/local/src/ 软件安装位置:/usr/local/ 解压缩下载的源码包 进入解压缩目录 软件配置与检查:./configure ...
随机推荐
- 使用Node.js版本管理器
使用Node.js版本管理器 完全卸载Node.js 清除Package缓存:npm cache clean --force 卸载Node.js:wmic product where caption= ...
- html5知识点补充—footer元素的使用
使用footer元素创建脚注 顾名思义,footer元素通常位于页面的底部.尽管footer通常位于某个区域或者页面的底部,但并非总是如此.footer元素旨在包含作者.网站所有者.版权数据.网站规章 ...
- 如何用vue打造一个移动端音乐播放器
写在前面 没错,这就是慕课网上的那个vue音乐播放器,后台是某音乐播放器的线上接口扒取,虽然这类项目写的人很多,但不得不说这还是个少有的适合vue提升的好项目,做这个项目除了想写一个比较大并且功能复杂 ...
- Mongo实验
MongoDB数据库操作 Student: { "name": "zhangsan", "score": { "English&q ...
- jsp基础、el技术、jstl标签、javaEE的开发模式
一.jsp技术基础 1.jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部 2)<%=java变量或表达式> ...
- C语言-操作符与表达式
C语言入门之操作符与表达式 前言 本篇文章主要包括各种操作符的介绍与表达式求值,欢迎各位小伙伴与我一起学习. 一.操作符 分类 算术操作符 移位操作符 位操作符 赋值操作符 单目运算符 关系操作符 逻 ...
- Java连接数据库报错:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
解决方案 连接Mysql报错 The last packet sent successfully to the server was 0 milliseconds ago. The driver ha ...
- Java-GUI编程之菜单组件
前面讲解了如果构建GUI界面,其实就是把一些GUI的组件,按照一定的布局放入到容器中展示就可以了.在实际开发中,除了主界面,还有一类比较重要的内容就是菜单相关组件,可以通过菜单相关组件很方便的使用特定 ...
- A. And Matching
分析题目:这道题的题目是说给定一个2的幂次n,然后要求我们从0~n-1这n个数中不重复的挑选两个进行配对,要求配对后的每一对按位与之和为k: 而且k的话还是从0~n-1都有的: 既然题目都这样说了,那 ...
- Linux中权限对于文件和目录的区别
Linux系统中的权限对于文件和目录来说,是有一定区别的 下面先列举下普通文件对应的权限 1)可读r:表示具有读取.浏览文件内容的权限,例如,可以对文件执行 cat.more.less.head.ta ...