Tomcat版本为7.0.76,jdk版本为1.7,系统版本为centos7
一.jdk安装
1.jdk简介
jdk是java的开发工具包,包含了java运行环境、各种类库和工具,它一般包括jre,jvm等,关系如下图。
2.安装
(1)下载 jdk-7u79-linux-x64.tar.gz
(2)创建/soft文件夹用来放置安装包
(3)tar xzvf jdk-7u79-linux-x64.tar.gz
(4)移动jdk解压后的文件夹到 /usr/local目录下
命令: mv /soft/jdk1.7.0_79 /usr/local/jdk1.7
(5)配置环境变量
(6)验证
3. 重点
(1)安装jdk之前要保证系统上没有其他版本jdk(包括自带的jdk),需要将他们全部卸载。
命令:rpm -qa | grep gcj
可能会出现以下信息
libgcj-4.1.2-44.el5
java-1.4.2-gcj-compat-1.4.2.0-40jpp.11
gcj为java编译器,卸载
命令:rpm -e –nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
–nodeps为强制卸载
命令:rpm -qa|grep jdk
可能看到如下类似的信息:
jdk-1.6.0_22-fcs
卸载
命令:rpm -e --nodeps jdk-1.6.0_22-fcs
(2)详解配置环境变量
命令: vi /etc/profile
在文件末尾加入
export JAVA_HOME=/usr/local/jdk1.7
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
保存后输入命令:source /etc/profile
JAVA_HOME指jdk的安装路径
classpath
是类路径,告诉 Java 应用程序去哪里查找第三方和自定义类 ,/jre/lib/rt.jar
包含了jdk的基础类库,tools.jar
是关于一些工具的类库,其中没有的dt.jar
是关于运行环境的类库.
.
是指当前路径 :
是并列含义,分隔号
$java_home
是引用前面的java_home
路径
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar
是类路径在java_home
路径下找寻需要的类库文件。
export PATH=$JAVA_HOME/bin:$PATH
是指在保留原有的path路径情况下 添加新的java路径,一般指向java的bin
文件夹
source
命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录
(3) 验证 java -version
查看版本信息
如出现以下内容则证明安装和配置环境变量成功
java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
二 . Tomcat安装
- Tomcat解压
tar zxvf apache-tomcat-7.0.76.tar
- 移动安装包
mv apache-tomcat-7.0.76 /usr/local/tomcat
- 启动tomcat
cd /usr/local/tomcat/bin
./catalina.sh start
如下则为启动成功
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/jdk1.7
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
- 验证tomcat是否成功
使用浏览器打开页面:http://你的IP地址:8080
显示如下则tomcat打开成功:
- 改端口号
cd /usr/local/tomcat/conf
vi server.xml
将下面的8080改为任意端口号即可,重启生效
<Connector port="8080" protocol="HTTP/1.1 connectionTimeout="20000" redirectPort="8443" />
三. Tomcat网页打不开常见问题
- 关闭防火墙
centos默认防火墙是firewalld,但也有自行安装的iptables。
查看防火墙状态:
firewall-cmd --state
显示防火墙服务状态:
systemctl status firewalld(.service)
关闭/打开防火墙:
systemctl stop firewalld(.service)
systemctl start firewalld(.service)
永久关闭/打开防火墙(开机时禁用/启用防火墙):
systemctl disable firewalld(.service)
systemctl enable firewalld(.service)
- 关闭selinux
selinux是一个 Linux 内核模块,也是 Linux 的一个安全子系统。
selinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。
在selinux出现之前,linux的安全模型是DAC,DAC的核心思想是:进程理论上所拥有的权限和执行它用户权限相同,而selinux设计了另一个模型是MAC,核心思想是:任何进程现在linux系统中做事情,都必须现在安全策略文件中赋予权限,在这个文件中没有赋予权限的,进程就没有权限。
比如:DAC我只想干这个事情,但是只要我的用户有权限,我想干什么事都行。MAC,我想干这个事情,必须先在安全策略文件中让这个事情有权限操作,我才能干,而且除了这个事情,别的事都不能干。
selinux没有用户概念,只有权限概念,只有有权限的事情才能执行,跟用户无关。先做DAC检查,完了之后再进行MAC检查。
DAC是跟用户权限有关,MAC是跟事务权限有关。
临时关闭selinux
setenforce 0
临时打开selinux
setenforce 1
永久关闭selinux
vi /etc/selinux/config
将selinux=enforce
改为selinux=enable
查看selinux状态
getenforce
- 改端口
有些情况tomcat默认8080端口使用不了,需要改一个其他没有使用的端口才能使用。
如果还想继续了解,可以看我其他关于tomcat的博客
tomcat配置文件详解
https://blog.csdn.net/weixin_42840933/article/details/84345306
tomcat目录详解
https://blog.csdn.net/weixin_42840933/article/details/84347677