原创|NO.A.0022|网络服务|——|Tomcat|Java web环境|nginx+JDK+Tomcat+MySQL|
发布于 2021-04-04 12:47
一、初识Tomcat
Tomcat服务器是一个免费的开源代码的web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选,Tomcat是apache服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat时,它实际上作为一个与apache独立的进程单独运行的。
严格说:tomcat是apache的子项目。
二、Java web环境:nginx+JDK+Tomcat+MySQL
三、环境部署流程
1、安装JDK(java解析器)
// 1、首先安装gcc
[root@server21 ~]# yum install -y gcc*
// 2、将软件包tomcat.zip上传、解压、并移至指定位置
[root@server21 ~]# unzip tomcat.zip
[root@server21 tomcat]# tar -zxvf jdk-7u25-linux-x64.tar.gz
[root@server21 tomcat]# cp -r jdk1.7.0_25/ /usr/local/jdk1.7
// 3、配置JDK的环境变量
[root@server21 tomcat]# vim /etc/profile #末尾添加以下内容
#java
export JAVA_HOME=/usr/local/jdk1.7
export JAVA_BIN=/usr/local/jdk1.7/bin
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
[root@server21 tomcat]# source /etc/profile #加载环境变量生效
// 4、查看java是否安装成功
[root@server21 tomcat]# java -version
java version "1.7.0_25" #能显示java版本说明java部署成功了
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
2、安装tomcat
// 1、将软件包上传、解压、并复制到指定目录下
[root@server21 ~]# cd tomcat
[root@server21 tomcat]# tar -zxvf apache-tomcat-7.0.42.tar.gz
[root@server21 tomcat]# cp -r apache-tomcat-7.0.42 /usr/local/tomcat
// 2、配置tomcat的环境变量
[root@server21 tomcat]# vim /etc/profile #末尾添加如下内容
#tomcat
export TOMCAT_HOME=/usr/local/tomcat
export PATH=$PATH:$TOMCAT_HOME/bin
[root@server21 ~]# source /etc/profile
// 3、将tomcat的启动脚本赋予执行权限
[root@server21 ~]# chmod +x /usr/local/tomcat/bin/* #根据自己的需求添加执行权限
// 4、开启tomcat
[root@server21 ~]# ll /usr/local/tomcat/bin/catalina.sh #该文件有执行权限
-rwxr-xr-x 1 root root 19877 Feb 4 09:49 /usr/local/tomcat/bin/catalina.sh
[root@server21 ~]# /usr/local/tomcat/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/local/jdk1.7
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
// 5、在客户端访问页面进行测试http://20.20.20.21:8080/
[root@server21 ~]# netstat -antp |grep :8080
tcp 0 0 :::8080 :::* LISTEN 1856/java
// http://20.20.20.21:8080/可以正常访问到apache的测试页面
3、安装MySQL数据库
// 1、安装依赖包ncurses-devel
[root@server21 ~]# yum install -y ncurses-devel gcc*
// 2、将MySQL文件进行传输到20.20.20.21上进行安装
[root@server21 tomcat]# tar -zxvf mysql-5.1.55.tar.gz
[root@server21 mysql-5.1.55]# useradd -r -s /sbin/nologin mysql
[root@server21 mysql-5.1.55]# ./configure --prefix=/usr/local/mysql --with-charset=utf8 \
> --with-collation=utf8_general_ci --with-extra-charsets=gbk,gb2312 \
> && make && make install
// 3、生成配置文件
[root@server21 mysql-5.1.55]# cp -a support-files/my-medium.cnf /etc/my.cnf
[root@server21 mysql-5.1.55]# ln -s /usr/local/mysql/bin/* /usr/local/bin/
[root@server21 mysql-5.1.55]# ln -s /usr/local/mysql/sbin/* /usr/local/sbin/
// 4、初始化数据库,生成授权表
[root@server21 mysql-5.1.55]# cd /usr/local/mysql/
[root@server21 mysql]# ./bin/mysql_install_db --user=mysql
Please report any problems with the /usr/local/mysql/bin/mysqlbug script!
// 5、生成启动管理脚本,启动mysql并设置开机自启
[root@server21 ~]# cd tomcat/mysql-5.1.55/support-files/
[root@server21 support-files]# cp -a mysql.server /etc/init.d/mysqld
[root@server21 support-files]# chmod +x /etc/init.d/mysqld
[root@server21 support-files]# chkconfig -add mysqld
-add: unknown option
[root@server21 support-files]# chkconfig --add mysqld
[root@server21 support-files]# chkconfig mysqld on
[root@server21 support-files]# service mysqld start
Starting MySQL. SUCCESS!
// 6、为数据库的管理员root设置登录密码
[root@server21 support-files]# mysqladmin -uroot password 123456
// 7、登录数据库,查看是否安装正确
[root@server21 support-files]# mysql -uroot -p
Enter password: 123456
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.00 sec)
4、安装nginx
// 1、解压nginx
[root@server21 tomcat]# tar -zxvf nginx-1.2.6.tar.gz
// 2、安装nginx依赖包
[root@server21 tomcat]# yum install -y pcre-devel zlib-devel gcc*
// 3、添加用户
[root@server21 tomcat]# useradd -r -s /sbin/nologin nginx
// 4、编译并安装
[root@server21 tomcat]# cd nginx-1.2.6
[root@server21 nginx-1.2.6]# ./configure --user=nginx --group=nginx && make && make install
// 5、修改nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
user nginx;
upstream tomcat { #添加负载调度(为了后期扩展更多Tomcat服务器方便)
server 20.20.20.21:8080;
}
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location / { #在server里面添加反向代理配置;此配置可能文件报错,建议使用下面配置
proxy_pass http://tomcat;
proxy_set_header Host $host;
}
#OR:也可以合并到卸载一个配置里面
location / {
root html;
index index.html index.htm;
proxy_pass http://tomcat;
proxy_set_header Host $host;
}
[root@server21 ~]# ln -s /usr/local/nginx/sbin/* /usr/local/sbin/
// 6、重启服务
[root@server21 ~]# nginx #启动nginx
[root@server21 ~]# pkill -HUP nginx #重启nginx
[root@server21 ~]# netstat -antp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 47965/mysqld
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 50210/nginx
tcp 0 0 :::8080 :::* LISTEN 1856/java
// 7、在客户端进行测试,输入nginx地址,打开的为tomcat部署的网站
# http://20.20.20.21/ #通过nginx对tomcat进行负载调度,实则访问出来的apache是通过nginx负载调度出来的,而实实在在提供服务的还是tomcat
5、部署Java 的WAR包
// 1、在/usr/local/tomcat/conf/server.xml配置文件中的server区域中添加标红内容
[root@server21 ~]# vim /usr/local/tomcat/conf/server.xml
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="atyanqi.war" debug="0" privileged="true"/> #项目名称为atyanqi.war
// 2、将war包拷贝到webapps目录中
[root@server21 ~]# cd /usr/local/tomcat/
[root@server21 tomcat]# cp -a /root/tomcat/atyanqi.war /usr/local/tomcat/webapps/
// 3、删除网站的ROOT目录
root@server21 tomcat]# rm -rf webapps/ROOT/ #有的话删除没有忽略
// 4、重启tomcat服务
[root@server21 tomcat]# /usr/local/tomcat/bin/catalina.sh stop
[root@server21 tomcat]# /usr/local/tomcat/bin/catalina.sh start
[root@server21 tomcat]# netstat -antp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 47965/mysqld
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 50210/nginx
tcp 0 0 :::8009 :::* LISTEN 50381/java
tcp 0 0 :::8080 :::* LISTEN 50381/java
// 5、测试
// 使用客户端浏览访问Nginx服务的端口
#注意:原本的tomcat使用8080端口进行访问,也可以将端口修改为80 使用IP直接访问,修改/usr/local/tomcat/conf/server.xml配置中的8080改变为80(切记不要和其他web服务器冲突)
#使用Chrome测试http://20.20.20.21/访问atyanqi java项目包;第一次访问比较慢,是因为第一次需要对atyanqi.wra包解压缩,所以速度比较慢。
#可以访问到atyanqi.wra包内容
6、创建多个tomcat实例(拓展)
// 1、首先将tomcat进行停止
[root@server21 ~]# /usr/local/tomcat/bin/catalina.sh stop
// 2、拷贝原来的tomcat到另外一个目录,如tomcat-2,清除logs目录
[root@server21 ~]# cd /usr/local/
[root@server21 local]# cp -a tomcat/ tomcat-2
[root@server21 local]# cd tomcat-2/
[root@server21 tomcat-2]# rm -rf logs/*
// 3、修改Tomcat-2中的/conf/server.xml文件,把shutdown和Connector端口修改成另外的数值,关闭端口修改为8006,连接端口修改为8090
[root@server21 tomcat-2]# vim conf/server.xml
<Server port="8006" shutdown="SHUTDOWN">
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
// 4、修改startup.sh和shudown.sh文件
// 在第一行均加入:export CATALINA_HOME=/usr/local/tomcat-2
[root@server21 tomcat-2]# vim /usr/local/tomcat-2/bin/startup.sh
export CATALINA_HOME=/usr/local/tomcat-2 #添加在开头
[root@server21 tomcat-2]# vim /usr/local/tomcat-2/bin/shutdown.sh
//5、启动tomcat
[root@server21 ~]# /usr/local/tomcat/bin/catalina.sh start
[root@server21 ~]# /usr/local/tomcat-2/bin/catalina.sh start
[root@server21 ~]# netstat -antp #查看8080和8090 端口是否正常启动
tcp 0 0 :::8080 :::* LISTEN 50458/java
tcp 0 0 :::8080 :::* LISTEN 50458/java
//6、修改nginx的配置文件
// 可以直接将8090写入配置好的Nginx负载均衡中。
[root@server21 ~]# vim /usr/local/nginx/conf/nginx.conf
upstream tomcat {
server 20.20.20.21:8080;
server 20.20.20.21:8090;
}
[root@server21 ~]# pkill -HUP nginx
//修改访问页面,为了实验的成功性
[root@server21 ~]# cp -a tomcat/atyanqi.psc /usr/local/tomcat-2/webapps/
[root@server21 ~]# rm -rf /usr/local/tomcat-2/webapps/atyanqi.war
[root@server21 ~]# mv /usr/local/tomcat-2/webapps/atyanqi.psc /usr/local/tomcat-2/webapps/atyanqi.war
// 7、查看结果
// 浏览http://192.168.10.20:8080 OR http://192.168.10.20
// 浏览http://192.168.10.20:8090
=================================END==================================
辅助文本
三、环境部署流程
1、安装JDK(java解析器)
// 1、首先安装gcc
yum install -y gcc
// 2、将软件包上传、解压、并移至指定位置
mv 解压缩目录 /usr/local/jdk1.7
// 3、配置JDK的环境变量
vim /etc/profile #添加以下内容
export JAVA_HOME=/usr/local/jdk1.7
export JAVA_BIN=/usr/local/jdk1.7/bin
export JAVA_$PATH:$JAVA_HOME/bin
export CLASSPATH=.:/JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile
// 4、查看java是否安装成功
java -version
2、安装tomcat
// 1、将软件包上传、解压、并复制到指定目录下
cp -a 解压目录 /usr/local/tomcat
// 2、配置tomcat的环境变量
vim /etc/profile
export TOMCAT_HOME=/usr/loca/tomcat
export PATH=$PATH:$TOMCAT_HOME/bin
source /etc/profile
// 3、将tomcat的启动脚本赋予执行权限
chmod +x /usr/local/tomcat/bin/*
// 4、开启tomcat
/usr/local/tomcat/bin/catalina.sh start
// 5、在客户端访问页面进行测试192.168.10.20:8080
3、安装MySQL数据库
// 1、安装依赖包ncurses-devel
yum install -y ncurses-devel gcc
// 2、将MySQL文件进行传输到192.168.20.10上进行安装
useradd -r -s /sbin/nologin mysql
./configure --prefix=/usr/local/mysql --with-charset=utf8 \
--with-collation=utg8_general_ci --with-extra-charsets=gbk,gb2312
make
make install
// 3、生成配置文件
cp -a support-files/my-medium.cnf /etc/my.cnf
ln -s /usr/local/mysql/bin/* /usr/local/bin/
ln -s /usr/local/mysql/sbin/* /usr/local/sbin/
// 4、初始化数据库,生成授权表
cd /usr/lcoal/mysql
./bin/mysql_install_db --user=mysql
// 5、生成启动管理脚本,启动mysql并设置开机自启
cd ~/mysql-5.1.55/support-files
cp -a mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig -add mysqld
chkconfig mysqld on
service mysqld start |stop |restart
// 6、为数据库的管理员root设置登录密码
mysqladmin -uroot password 123456
// 7、登录数据库,查看是否安装正确
4、安装nginx
// 1、解压nginx
tar -xf nginx-1.2.6.tar.gz
// 2、安装nginx依赖包
yum install -y pcre-devel zlib-devel gcc
// 3、添加用户
useradd -r -s /sbin/nologin nginx
// 4、编译并安装
./configure --user=nginx --group=nginx
make
make install
// 5、修改nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
user nginx;
upstream tomcat { #添加负载调度(为了后期扩展更多Tomcat服务器方便)
server 192.168.10.20:8080;
}
location / { #添加反向代理
proxy_pass http://tomcat;
proxy_set_header Host $host;
}
// 6、重启服务
pkill -HUP nginx
// 7、在客户端进行测试,输入nginx地址,打开的为tomcat部署的网站
5、部署Java 的WAR包
// 1、在/usr/local/tomcat/conf/server.xml配置文件中的server区域中添加标红内容
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy"true">
<Context path="" docBase="test.war" debug="0" privileged="true"/>
// 2、将war包拷贝到webapps目录中
cp -a test.war /usr/local/tomcat/webapps/
// 3、删除网站的ROOT目录
rm -rf ROOT
// 4、重启tomcat服务
/usr/local/tomcat/bin/catelina.sh stop
/usr/lcoal/tomcat/bin/catalina.sh start
// 5、测试
// 使用客户端浏览访问Nginx服务的端口
#注意:原本的tomcat使用8080端口进行访问,也可以将端口修改为80 使用IP直接访问,修改/usr/local/tomcat/conf/server.xml配置中的8080改变为80(切记不要和其他web服务器冲突)
6、创建多个tomcat实例(拓展)
// 1、首先将tomcat进行停止
/usr/local/tomcat/bin/catalina.sh stop
// 2、拷贝原来的tomcat到另外一个目录,如tomcat-2,清除logs目录
cp -a tomcat/ tomcat-2
rm -rf tomcat-2/logs/*
// 3、修改Tomcat-2中的/conf/server.xml文件,把shutdown和Connector端口修改成另外的数值,关闭端口修改为8006,连接端口修改为8090
vim /usr/local/tomcat-2/conf/serve.xml
<Server port="8006" shutdown="SHUTDOWN">
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort"8443"/>
// 4、修改startup.sh和shudown.sh文件
// 在第一行均加入:export CATALINA_HOME=/usr/local/tomcat-2
5、启动tomcat
/usr/lcoal/tomcat/bin/catalina.sh start
/usr/local/tomcat-2/bin/catalina.sh start
netstat -antp #查看8080和8090 端口是否正常启动
// 6、查看结果
// 浏览http://192.168.10.20:8080
// 浏览http://192.168.10.20:8090
// 可以直接将8090写入配置好的Nginx负载均衡中。
END
声明:JavaBBS论坛主要用于IT技术专题的交流学习,为开源技术爱好者提供广泛、权威的技术资料。若您在技术专题有更好的想法或者建议,欢迎交流!!!
推荐阅读
Recommended reading
Git JavaBBS
→
https://www.javabbs.cn/git
→ https://www.javabbs.cn JavaBBS大数据
/dsj
→ https://www.javabbs.cn JavaBBS云存储
/ycc
JavaBBS数据库
https://www.javabbs.cn→
/sjk
→ https://www.javabbs.cn JavaBBS云计算
/yjs
JavaBBSIT.Log
https://www.javabbs.cn/itl→
JavaBBSNginx
https://www.javabbs.cn→
/ngx
JavaBBSzabbix
https://www.javabbs.cn→
/zbx
JavaBBSJavaSE
https://www.javabbs.cn→
/jse
JavaBBS社区文章
https://www.javabbs.cn→
/bwz
JavaBBS社区资料
https://www.javabbs.cn→
/bzl
本文来自网络或网友投稿,如有侵犯您的权益,请发邮件至:aisoutu@outlook.com 我们将第一时间删除。
相关素材