`

深入浅出Nginx之五【nginx与tomcat整合】

阅读更多

JDK(Java Development Tookkit)中包含了jre(Java Runtime Environment),而jre是一个java应用运行的基础平台,为此需要在Linux系统上面事先安装JDK环境。然后再安装Tomcat作为web服务器,最后可以将nginx和tomcat进行整合,作为负载均衡和反向代理的基础。

 

<一>. 安装JDK:
     上传文件:使用nick账号上传jdk-6u45-linux-i586.bin到/software下面。

      进行安装:

su - nick                                #切换账号
cd /software                             #切换路径
mv jdk-6u45-linux-i586.bin /usr/local    #移动文件
cd /usr/local                            #切换路径
chmod 744 jdk-6u45-linux-i586.bin        #修改权限:当前用户可执行
./jdk-6u45-linux-i586.bin                #进行安装
rm jdk-6u45-linux-i586.bin               #删除安装程序
mv jdk1.6.0_45 jdk                       #重命名安装目录

    设置环境变量:

echo $PATH                                #查看PATH
cd ~                                      #切换到主目录
vi .bash_profile                          #编辑当前用户的环境变量

    追加如下内容:

JAVA_HOME=/usr/local/jdk
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar
export JAVA_HOME PATH CLASSPATH
source .bash_profile                      #立即生效
java -version                             #验证是否安装成功

 

 <二>. 安装Tomcat:
     上传文件:使用nick账号上传apache-tomcat-6.0.37.tar.gz到/software下面。

su - nick                                  #切换账号
cd /software                               #切换路径
mv apache-tomcat-6.0.37.tar.gz /usr/local  #移动文件
cd /usr/local                              #切换路径
tar -zxvf apache-tomcat-6.0.37.tar.gz      #进行安装
rm apache-tomcat-6.0.37.tar.gz             #删除安装程序
mv apache-tomcat-6.0.37 tomcat             #重命名安装目录

     启动/关闭:

cd /usr/local/tomcat/bin                    #进入bin路径
./startup.sh                                #启动
./shutdown.sh                               #启动

    设置环境变量:

echo $PATH                                   #查看PATH
cd ~                                         #切换到主目录
vi .bash_profile                             #编辑当前用户的环境变量

     追加如下内容:

CATALINA_HOME=/usr/local/tomcat
PATH=$CATALINA_HOME/bin:$PATH
export CATALINA_HOME PATH 
source .bash_profile                         #立即生效

     进行访问:任意路径都可执行

startup.sh                                   #启动
shutdown.sh                                  #关闭

 

 <三>. nginx与tomcat整合:
   项目内部的动态、静态请求都转发至tomcat,项目外部的静态资源请求转发至图片服务器。

 1. 代理配置:http作用域.

proxy_connect_timeout  90;

     说明:nginx和后端服务器的请求连接超时时间,默认为60s

proxy_read_timeout  90;

       说明:连接成功后,排队等候处理超时时间,默认为60s

 proxy_send_timeout  90;

       说明:后端服务器的数据发送超时时间,默认60s

 proxy_buffer_size  16k;

       说明:代理缓冲区,保留后端服务器响应的第一部分,通常为响应的头部

 proxy_buffers  4 32k;

       说明:保留后端服务器的响应数据,每块缓冲区32k,一共有4块

 proxy_busy_buffers_size  64k;

       说明:系统繁忙时,申请更大的代理缓冲区,推荐为上述值的2倍

 proxy_temp_file_write_size  128k;

       说明:缓冲区无法保存时,将数据写至临时文件,默认存放目录为nginx安装目录下的/proxy_temp

 2. 设置后端tomcat访问路径:http作用域

upstream tomcat_server {
    server  192.168.142.56:8080;
}

   3. 项目内部的资源请求转发给tomcat:

  server {
      listen       80;
      server_name  www.excelsoft.com;

      location / {
          proxy_pass  http://tomcat_server;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

          index  index.html index.htm index.jsp index.do;
          access_log  /opt/nginx/logs/access.excelsoft.log access;
      }

      location ~* \.(gif|jpg|jpeg|png|bmp|swf)$ {
          proxy_pass  http://tomcat_server;

          expires  15d;
          access_log  off;
      }

      location ~ \.(js|css)$ {
          proxy_pass  http://tomcat_server;

          expires  1h;
          access_log  off;
      }
  }

  4. 静态资源虚拟主机:

  server {
      listen       80;
      server_name  static.excelsoft.com;
   
      root  /software/static;
      access_log  off;

      location ~* \.(gif|jpg|jpeg|png|bmp|swf)$ {
          expires  15d;
      }

      location ~ \.(js|css)$ {
          expires  1h;
      }
  }

 

 <四>. 测试验证:su - root
 1. 校验nginx.conf合法性:

/usr/local/nginx/sbin/nginx -t

    2. nginx平滑重启:

 kill -HUP `cat /opt/nginx/logs/nginx.pid`

 

1
1
分享到:
评论
1 楼 time1118 2016-05-22  
看了几篇博文,感觉博主文笔不错啊,加油。

相关推荐

Global site tag (gtag.js) - Google Analytics