美文网首页
CentOS6 部署 nginx 代理 tomcat

CentOS6 部署 nginx 代理 tomcat

作者: 俊果果 | 来源:发表于2019-07-28 18:12 被阅读0次

一、安装 java

1、首先去oracle JDK下载如下文件:

image.png
如果有可用的下载链接,可以直接命令行运行wget xxxlink
然后进入下载目录,执行命令ls -lht查看下载文件的详细信息,注意包文件大小是否相符
image.png
(图中是我改过文件名的)

2、安装

  • 这里安装到目录/usr/local/java/
    若不存在此目录,先创建mkdir /usr/local/java/
  • 解压文件到该目录
    tar -zxvf jdk.tar.gz -C /usr/local/java/
  • 设置环境变量
    vi /etc/profile 在文件末尾添加如下内容
export JAVA_HOME=/usr/local/java/jdk1.8.0_221
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
  • 启用修改
    source /etc/profile
  • 添加软连接
    ln -s /usr/local/java/jdk1.8.0_221/bin/java /usr/bin/java
  • 检查安装完成


    image.png

二、安装 tomcat

  • 访问网页下载Apache Tomcat文件
    image.png
    可以直接执行命令:
wget http://apache.mirrors.lucidnetworks.net/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz

查看下载文件

image.png
移动文件到目录/usr/local/
mv apache-tomcat-9.0.22.tar.gz /usr/local/

解压:tar -zxvf

tar -zxvf apache-tomcat-9.0.22.tar.gz 
  • 启动 tomcat
    sh /usr/local/apache-tomcat-9.0.22/bin/startup.sh
    image.png
  • 浏览器访问localhost:8080,可以出现 tomcat 的欢迎页面,即安装成功
  • 设置开机自启
    编辑文件 vi /etc/rc.d/rc.local,在最后加入以下内容
export JAVA_HOME=/usr/local/java/jdk1.8.0_221
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CATALINA_HOME=/usr/local/apache-tomcat-9.0.22/

sh /usr/local/apache-tomcat-9.0.22/bin/startup.sh

保存退出,然后执行以下命令生效
chmod +x /etc/rc.d/rc.local

三、安装 nginx

  • 安装依赖
    gcc编译环境 : yum install -y gcc-c++
    rewrite模块需要 PCRE(Perl Compatible Regular Expressions),pcre-devel 库:yum install -y pcre pcre-devel
    gzip模块需要 zlib 库 :yum install -y zlib
    ssl 功能需要 OpenSSL 库:yum install -y openssl openssl-devel
  • 下载 nginx
    官网
    image.png

命令:wget http://nginx.org/download/nginx-1.17.2.tar.gz

image.png
  • 安装
    解压:tar -zxvf nginx-1.17.2.tar.gz -C /usr/local/
    安装,依次运行命令:
cd /usr/local/nginx-1.17.2/
./configure
make
make install

安装完成后,默认目录在/usr/local/nginx
可以使用whereis nginx查找所在位置

image.png
  • 启动
    执行命令/usr/local/nginx/sbin/nginx
    重启/usr/local/nginx/sbin/nginx -s reload
    查看进程信息ps aux|grep nginx
    image.png
    浏览器访问 localhost,可以出现 nginx 的欢迎页面,即安装成功。

四、tomcat 部署 war 包

上传war包到tomcatwebapps目录

image.png
等待一会儿,访问localhost:8080/SSMDemo/即可浏览项目页面
  • 如果想不带后缀/SSMDemo直接访问
    编辑如下文件
    image.png
    vi /usr/local/apache-tomcat-9.0.22/conf/server.xml
    在文件末尾的</Host>节点内部,添加一条如下配置
<Context path="" docBase="SSMDemo" debug="0" reloadable="true"/> 
image.png
重启 tomcat 后即可通过 localhost:8080直接访问到改项目页面

五、nginx 转发 tomcat

修改nginx.conf配置文件

vi /usr/local/nginx/conf/nginx.conf

server 节点内容改为如下

image.png
全部配置示例
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    server_tokens off;
    autoindex off;
  

    server {
        listen               80;
        server_name          localhost;
        access_log off;
        
        location  / {
    proxy_pass   http://localhost:8080/;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    client_max_body_size 50m;
    client_body_buffer_size 256k;
    proxy_connect_timeout 1;
    proxy_send_timeout 30;
    proxy_read_timeout 60;
    proxy_buffer_size 256k;
    proxy_buffers 4 256k;
    proxy_busy_buffers_size 256k;
    proxy_temp_file_write_size 256k;
    proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;
    proxy_max_temp_file_size 128m;  
        }
    }
}

保存后测试配置修改是否正确:/usr/local/nginx/sbin/nginx -t

image.png
配置ok,重启 nginx
/usr/local/nginx/sbin/nginx -s reload
  • 测试
    浏览器输入 localhost,会显示 SSMDemo 项目的网页,即成功

六、防火墙配置

  • 参考文档
    iptables 防火墙配置教程
  • 配置
    查看现有策略iptables -L -n --line-numbers
    image.png
    允许访问 80 端口:iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    禁止访问 8080 端口:
iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A OUTPUT -p tcp --sport 80 -j DROP

保存规则:service iptables save
重启防火墙使规则生效:service iptables restart

相关文章

网友评论

      本文标题:CentOS6 部署 nginx 代理 tomcat

      本文链接:https://www.haomeiwen.com/subject/btdprctx.html