Tomcat软件的概念
Tomcat是一款开源的、免费的WEB服务器软件(Apache、Nginx),隶属于Apache基金会旗下的,主要是基于HTTP协议(超文本传输协议)去发布网站代码、提供网页信息服务的,最终用户通过浏览器可以实现网站页面的访问。
Tomcat软件的特点
- 软件自身是JAVA语言开发的;
- 可以支持处理动静网页;
- 支持虚拟主机、发布多个网站;
- 可以支持多实例(启动多个进程)。
Tomcat WEB软件默认可以处理动静网页,主要是处理JSP动态程序,JSP(Java server page)是Java语言开发的网站页面(服务页面),在企业生产环境中Tomcat处理动态网页的并发请求可以达到5000/s。
- 静态网页
静态网页一般是跟后端数据库不发生交互的网页,网页内容很少更新或者几乎不更新的,其网页文件后缀命名通常是以.htm、.html、.xml等结尾的。
- 动态网页
动态网页一般是跟后端数据库发生交互的网页,网页内容经常更新或者随着后端数据库内容变化而更新的,其网页文件后缀命名通常是以.asp、.jsp、.php等结尾的。
JDK、Java、Tomcat三者关系
Java是一门面向对象的编程语言,JDK是Java语言开发的环境、SDK开发工具包、同时JDK是Java程序运行时所需的环境(JRE:JVM虚拟机和Java类、库),JVM虚拟机可以解析Java程序字节码(.classes文件)。而Tomcat是基于Java语言开发的,Tomcat程序运行时需提前配置JDK工具。
实验环境
操作系统:OpenEuler
tomcat:192.168.154.177
nginx:192.168.154.179
安装部署
基于OpenEuler系统部署一套Tomcat WEB平台,采用二进制Tar包方式部署,部署方式和指令如下:
安装JDK
yum -y install java-11-openjdk从Apache官网下载Tomcat软件包
wget -c https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.111/bin/apache-tomcat-9.0.111.tar.gz解压apache-tomcat-9.0.111.tar.gz
tar -xzvf apache-tomcat-9.0.111.tar.gz进入apache-tomcat-9.0.111目录
cd apache-tomcat-9.0.111创建Tomcat程序部署目录;
mkdir -p /usr/local/tomcat将解压后的tomcat程序文件拷贝至其部署目录即可;
\cp * -a /usr/local/tomcat/查看Tomcat程序是否部署成功
ll /usr/local/tomcat/启动Tomcat服务进程;
/usr/local/tomcat/bin/startup.sh查看Tomcat进程;
ps -ef | grep tomcat查看日志文件
ls -l /usr/local/tomcat/logs/catalina.out查看监听端口
netstat -tnlp | grep -aiwE "8005|8080|8009"- 8005 SHUTDOWN指令关闭服务的端口;
- 8080 HTTP协议远程访问的端口;
- 8009 AJP协议访问端口,Apache和Tomcat专属通信端口。
Firewalld防火墙对外开放8080端口;
firewall-cmd --add-port=8080/tcp --permanentsystemctl reload firewalld.servicesystemctl stop firewalld.service用户通过浏览器访问Tomcat服务器IP地址+8080端口,即可访问Tomcat默认测试页面
http://192.168.154.177:8080/
查看发布目录
cd /usr/local/tomcat/webapps/创建JSP测试代码
在/usr/local/tomcat/webapps/ROOT下创建index.jsp文件,内容如下:
cd /usr/local/tomcat/webapps/cp -r ROOT ROOT.bakrm -rf *vim index.jsp<html> <body> <h1>JSP Test Page</h1> <%=new java.util.Date()%> </body></html>安装部署多台Tomcat
将tomcat目录更名为tomcat_v1
mv /usr/local/tomcat /usr/local/tomcat_v1将tomcat_v1目录复制为tomcat_v2
cp -r /usr/local/tomcat_v1/ /usr/local/tomcat_v2查看tomcat目录
ls -ld /usr/local/tomcat_*结束之前的java进程
pkill java修改/usr/local/tomcat_v2/conf/server.xml下的端口
将8005改为8006、8080改为8081
vim /usr/local/tomcat_v2/conf/server.xml启动tomcat_v1和tomcat_v2服务程序
/usr/local/tomcat_v1/bin/startup.sh/usr/local/tomcat_v2/bin/startup.sh查看tomcat进程
netstat -tnlp | grep -E "8005|8080|8006|8081"浏览器访问
http://192.168.154.177:8080/和http://192.168.154.177:8081/
安装和配置nginx
安装依赖
yum install -y gcc gcc-c++ make pcre-devel zlib-devel openssl-devel下载nginx
wget -c http://nginx.org/download/nginx-1.27.1.tar.gz -P /usr/src/进入/usr/src目录
cd /usr/src/解压nginx-1.27.1.tar.gz
tar -xzvf nginx-1.27.1.tar.gz进入nginx-1.27.1目录
cd nginx-1.27.1预编译
./configure --prefix=/usr/local/nginx/ --user=www --group=www --with-http_stub_status_module编译&&安装
make -j4 && make -j4 install创建www用户
useradd www进入/usr/local/nginx/conf/目录
cd /usr/local/nginx/conf/清除nginx.conf配置文件中的#号行和空行
grep -vE "#|^$" nginx.conf.default >nginx.conf启动nginx进程
/usr/local/nginx/sbin/nginx关闭防火墙
systemctl status firewalldsystemctl stop firewalldsystemctl disable firewalld浏览器访问
http://192.168.154.179/
负载均衡:配置nginx跳转到tomcat实现
修改nginx配置文件
vim /usr/local/nginx/conf/nginx.conf #添加红框部分内容重启nginx服务
/usr/local/nginx/sbin/nginx -t/usr/local/nginx/sbin/nginx -s reload浏览器访问依次刷新
由下图可看到每次刷新后的结果都不一样,说明访问的tomcat不同
动静分离
编辑/usr/local/nginx/conf/nginx.conf配置文件
vim /usr/local/nginx/conf/nginx.conf #添加红框部分内容重启nginx服务
/usr/local/nginx/sbin/nginx -s reload论坛部署
上传jforum-2.5.0.war文件
拷贝jforum-2.5.0.war到/usr/local/tomcat_v1/webapps/下
cp jforum-2.5.0.war /usr/local/tomcat_v1/webapps/安装mysql数据库
yum -y install mysql mysql-server开机启动MYSQL服务&启动MYSQL服务;
systemctl enable mysqld.servicesystemctl restart mysqld.service查看mysql进程
ps -ef | grep mysql进入mysql数据库
mysql设置mysql密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'aaaAAA111.';刷新权限
flush privileges;创建数据库jforum
create database jforum;浏览器访问
http://192.168.154.177:8080/jforum-2.5.0/install.jsp
下一步
开始安装
更改加密规则
mysql8.0之前的版本中加密规则是mysql_native_password, 而在mysql8之后,加密规则是caching_sha2_password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'aaaAAA111.';刷新权限
flush privileges;重新刷新浏览器
下一步开始安装
部署第二台论坛:
将tomcat_v1/webapps目录下的jforum拷贝到tomcat_v2/webapps目录下实现两台论坛
cp -r /usr/local/tomcat_v1/webapps/jforum-2.5.0 /usr/local/tomcat_v2/webapps/浏览器访问
http://192.168.154.177:8081/jforum-2.5.0/forums/list.page
通过nginx访问
远程拷贝
将/usr/local/tomcat_v1/webapps/jforum-2.5.0远程拷贝到192.168.154.179服务器下的/usr/local/nginx/html
scp -r /usr/local/tomcat_v1/webapps/jforum-2.5.0 root@192.168.154.179:/usr/local/nginx/html进入/usr/local/nginx/html/目录
cd /usr/local/nginx/html/设置目录权限
chown -R www:www jforum-2.5.0/编辑/usr/local/nginx/conf/nginx.conf配置文件
vim /usr/local/nginx/conf/nginx.conf #添加红框部分内容做网页规则跳转重启nginx服务
/usr/local/nginx/sbin/nginx -s reload浏览器访问
http://192.168.154.179
