共计 5084 个字符,预计需要花费 13 分钟才能阅读完成。
系统环境:CentOS 6.7
软件环境:JDK-1.8.0_65、Nginx-1.10.3、Tomcat-8.5.8
文档环境:/opt/app/ 存放软件目录,至于 mkdir 创建文件就不用再说了
首先将东西下载或上传到服务器上,/opt/app/ 目录存放 Tomcat 和 JDK 的包,分别是 apache-tomcat-8.5.8.tar.gz 和 jdk-8u65-linux-x64.tar.gz,使用 tar -zxvf xxx.tar.gz 解压,而 nginx-1.10.3.tar.gz 随便找个地方存放着,不要放在一起,下面再说为什么!
1、配置 JDK
编辑 /etc/profile(vi /etc/profile),在最底下加上:
export Java_HOME=/opt/app/jdk1.8.0_65
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
使用 source /etc/profile 令配置文件生效,通过 java -version 判断是否成功即可
2、安装 Tomcat
其实都不算安装,Tomcat 解压可用,配置好 Java 的环境变量之后进入 Tomcat 解压后的目录,进入其 bin 目录,执行以下 startup.sh 文件即可,Tomcat 默认端口是 8080,通过 ip:8080 即可判断 Tomcat 是否成功启动,或者通过 netstat -nltp 查看端口、jps 查看 java 进程显示 Bootstrap 都可以检测 Tomcat 是否启动
3、安装 Nginx
在任意地方解压 nginx-1.10.3.tar.gz,之所以不将该文件与 JDK 等文件存放一起是因为 Nginx 是编译安装,可以指定编译安装路径,使三个软件都存放在相同位置,没有强迫症的童鞋可随意。
在编译安装 nginx 之前需要先安装一些依赖包,这是非常重要的。其中包括有 C /C++ 的编译等,由于使用的是 centos 系统,所以 apt-get 什么就不会出现,使用的是 yum 安装
yum -y install gcc gcc-c++ autoconf automake
yum -y install zlib zlib-devel openssl opsenssl-devel pcre pcre-devel
安装好依赖项之后,进入 nginx 解压目录,使用./configure –prefix=/opt/app/nginx 配置 nginx 安装目录,之后使用 make && make install 进行编译安装,安装好了之后,在 /opt/app/ 中就会生成 nginx 目录了。进入 /opt/app/nginx/sbin,执行./nginx 启动 nginx。Nginx 默认端口是 80,通过 IP 即可判断 Nginx 是否成功启动,或者通过 nestat -nltp 查看端口,ps -ef | grep nginx 查看 Nginx 进程都可以检测 Nginx 是否启动
4、配置 Nginx 重定向到 Tomcat
修改 ngin 配置文件,进入 nginx 安装好的目录里面的 conf 目录,修改 nginx.conf 文件,vi nginx.conf,找到 server 的设置,在 location 一项中添加 proxy_pass http://localhost:8080; 如下图,即将原本指向 Nginx 的地址重定向到 Tomcat 的地址,重新启动 Nginx,通过 IP 直接访问即可重定向到 Tomcat 页面,这就是简单的 Nginx+Tomcat 整合。
5、配置 Tomcat 开机自启动
服务器经常会不明原因地奔溃、重启,尤其是云服务器,如果每次都要自己手动启动 Tomcat 那就太麻烦了,因为我们需要将 Tomcat 配置开机启动。首先,在 /etc/init.d/ 目录下创建一个名为 tomcat 的文件,直接 vi tomcat 进入编辑即可,然后输入一下内容(可复制):
#!/bin/bash
# chkconfig: 345 99 10
# description: Auto-starts tomcat
# /etc/init.d/tomcat
# Tomcat auto-start
# Source function library.
#. /etc/init.d/functions
# source networking configuration.
#. /etc/sysconfig/network
RETVAL=0
## 这里是配置 jre 路径
export JRE_HOME=/root/app/jdk1.8.0_65/jre
## 这里是 Tomcat 路径
export CATALINA_HOME=/opt/app/apache-tomcat-8.5.8
start()
{
if [-f $CATALINA_HOME/bin/startup.sh];
then
echo $”Starting Tomcat”
$CATALINA_HOME/bin/startup.sh
RETVAL=$?
echo ” OK”
return $RETVAL
fi
}
stop()
{
if [-f $CATALINA_HOME/bin/shutdown.sh];
then
echo $”Stopping Tomcat”
$CATALINA_HOME/bin/shutdown.sh
RETVAL=$?
sleep 1
ps -fwwu tomcat | grep apache-tomcat|grep -v grep | grep -v PID | awk ‘{print $2}’|xargs kill -9
echo ” OK”
# [$RETVAL -eq 0] && rm -f /var/lock/…
return $RETVAL
fi
}
case “$1” in
start)
start
;;
stop)
stop
;;
restart)
echo $”Restaring Tomcat”
$0 stop
sleep 1
$0 start
;;
*)
echo $”Usage: $0 {start|stop|restart}”
exit 1
;;
esac
exit $RETVAL
保存后配置一下权限 chmod a+x tomcat(a+ x 参数表示 ==> all user can execute 所有用户可执行)
然后这个脚本设置为开机启动,chkconfig –add tomcat
通过 service tomcat start/stop/restart 就可以启动 / 停止 / 重启 Tomcat 了,而且还会有提示信息
6、配置 Nginx 开机自启动
与 Tomcat 配置同理,在 /etc/init.d/ 目录下添加 nginx 脚本文件,输入以下代码:
#!/bin/bash
#
# nginx – this script starts and stops the nginx daemin
#
# chkconfig: – 85 15
# description: Nginx is an HTTP(S) server, HTTP(S) reverse
# proxy and IMAP/POP3 proxy server
# processname: nginx
# config: /usr/local/nginx/conf/nginx.conf
# pidfile: /usr/local/nginx/logs/nginx.pid
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[“$NETWORKING” = “no”] && exit 0
## Nginx 路径
nginx=”/opt/app/nginx/sbin/nginx”
prog=$(basename $nginx)
## Nginx 配置文件路径
NGINX_CONF_FILE=”/opt/app/nginx/conf/nginx.conf”
lockfile=/var/lock/subsys/nginx
start() {
[-x $nginx] || exit 5
[-f $NGINX_CONF_FILE] || exit 6
echo -n $”Starting $prog: “
daemon $nginx -c $NGINX_CONF_FILE
retval=$?
echo
[$retval -eq 0] && touch $lockfile
return $retval
}
stop() {
echo -n $”Stopping $prog: “
killproc $prog -QUIT
retval=$?
echo
[$retval -eq 0] && rm -f $lockfile
return $retval
}
restart() {
configtest || return $?
stop
start
}
reload() {
configtest || return $?
echo -n $”Reloading $prog: “
killproc $nginx -HUP
RETVAL=$?
echo
}
force_reload() {
restart
}
configtest() {
$nginx -t -c $NGINX_CONF_FILE
}
rh_status() {
status $prog
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case “$1” in
start)
rh_status_q && exit 0
$1
;;
stop)
rh_status_q || exit 0
$1
;;
restart|configtest)
$1
;;
reload)
rh_status_q || exit 7
$1
;;
force-reload)
force_reload
;;
status)
rh_status
;;
condrestart|try-restart)
rh_status_q || exit 0
;;
*)
echo $”Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}”
exit 2
esac
保存后配置一下权限 chmod a+x nginx(a+ x 参数表示 ==> all user can execute 所有用户可执行)
然后这个脚本设置为开机启动,chkconfig –add nginx
通过 service nginx start/stop/restart 就可以启动 / 停止 / 重启 Nginx 了,而且还会有提示信息
CentOS 6.7 配置 Nginx+Tomcat 简单整合到此完成了,其中很多配置方法并不唯一,选择自己喜欢的方式即可。
更多 Tomcat 相关教程见以下内容:
CentOS 6.6 下安装配置 Tomcat 环境 http://www.linuxidc.com/Linux/2015-08/122234.htm
RedHat Linux 5.5 安装 JDK+Tomcat 并部署 Java 项目 http://www.linuxidc.com/Linux/2015-02/113528.htm
Tomcat 权威指南(第二版)(中英高清 PDF 版 + 带书签) http://www.linuxidc.com/Linux/2015-02/113062.htm
Tomcat 安全配置与性能优化 http://www.linuxidc.com/Linux/2015-02/113060.htm
Linux 下使用 Xshell 查看 Tomcat 实时日志中文乱码解决方案 http://www.linuxidc.com/Linux/2015-01/112395.htm
CentOS 64-bit 下安装 JDK 和 Tomcat 并设置 Tomcat 开机启动操作步骤 http://www.linuxidc.com/Linux/2015-01/111485.htm
CentOS 6.5 下安装 Tomcat http://www.linuxidc.com/Linux/2015-01/111415.htm
Tomcat 中 session 的管理机制 http://www.linuxidc.com/Linux/2016-09/135072.htm
Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/141761.htm