`

深入浅出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  
看了几篇博文,感觉博主文笔不错啊,加油。

相关推荐

    架构师培训教程 大数据高并发服务器实战 第2.9篇-Nginx部分-与Tomcat整合配置 共14页.pptx

    整个教程内容深入浅出,涵盖了从基础的Nginx配置到高级的高并发解决方案,对理解Nginx和Tomcat的整合、提升系统性能和容错能力具有很大帮助。通过学习这部分内容,开发者可以掌握构建高效、稳定的大数据高并发服务器...

    深入剖析TOMCAT+Tomcat权威指南(第二版)

    这两本书籍深入浅出地讲解了Tomcat的各个方面,无论是对初学者还是高级开发者,都是不可多得的参考资料。通过学习,读者不仅可以熟练操作Tomcat,还能深入了解Java Web技术的底层原理,提升自己的技术水平。

    轻量级nginx

    对于Linux基础的读者来说,本文档将深入浅出地介绍Nginx的安装、配置、管理以及调优。文档共分为10章,涵盖了Nginx的方方面面,包括Nginx简介、安装与启动、基本配置、Rewrite规则,以及源代码搭建LNMP环境。 文档...

    影刀RPA中级证书-数据处理-列表计算价格

    影刀RPA致力于为各行业客户提供高效、灵活的自动化解决方案。能够实现PC、手机上任何软件的自动化操作,支持Windows、Linux等操作系统,以及桌面软件、Web程序和手机App的自动化。 影刀RPA的核心功能包括数据抓取、解析、校验和自动填表,还支持可视化流程设计器、Python和JavaScript脚本接入,以及流程录制等功能,帮助用户快速搭建自动化流程。影刀RPA结合AI技术,支持机器视觉、自然语言处理等高级功能,进一步提升自动化能力。影刀RPA广泛应用于电商、金融、制造等行业,帮助客户实现订单处理、客户数据录入、财务对账等任务的自动化。影刀实战,影刀证书快速获取,影刀功能定制

    cloud单点登录集成

    cloud单点登录集成

    JAVAFX开发的虚拟桌宠,禁止商用!!!!

    女朋友生日,突发奇想用她喜欢的表情包做了个虚拟桌宠 大家要用只需要替换一下GIF就行

    大学生创新创业大赛项目 - 仿 Envato 的电商项目.zip

    大学生创业项目源码

    open-vm-tools-11.0.5-3.el7-9.9.x64-86.rpm.tar.gz

    1、文件内容:open-vm-tools-11.0.5-3.el7_9.9.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf open-vm-tools-11.0.5-3.el7_9.9.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊

    华为网路设备学习-14 (web界面中复原防火墙实验)

    华为网路设备学习-14 (web界面中复原防火墙实验)

    基于springboot框架的Javaweb体育馆管理系统的设计与实现(完整源码+数据库sql文件+项目文档+Java项目编程实战+编程练手好项目).zip

    关键词:海滨体育馆管理,Java技术,MYSQL数据库,Spring Boot框架 1 引言 1 1.1 课题背景 1 1.2 设计原则 1 1.3 论文结构安排 2 2 系统关键技术 3 2.1 JAVA技术 3 2.2 B/S结构 3 2.3 MYSQL数据库 4 2.4 Spring Boot框架 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 经济可行性 5 3.1.3 运行可行性 5 3.1.4 法律可行性 5 3.2 系统性能分析 5 3.3 系统功能分析 6 3.4 系统流程分析 7 3.4.1 注册登录流程 7 3.4.2 添加信息流程 8 3.4.3 删除信息流程 8 4 系统设计 9 4.1 系统概要设计 9 4.2 系统结构设计 9 4.3 系统顺序图设计 10 4.4 数据库设计 10 4.4.1 数据库E-R图设计 10 4.4.2 数据库表设计 12 5 系统的实现 15 5.1 登录模块的实现 15 5.2 注册模块的实现 15 5.3 学生管理模块的实现 16 5.4 系统主界面模块的实现 16 5.5 器材管理模块

    Python实现基于IBES-ELM基于改进的秃鹰搜索优化算法优化极限学习机的数据回归预测 多指标的详细项目实例(含完整的程序,GUI设计和代码详解)

    内容概要:本文档详细介绍了一个名为《Python实现基于IBES-ELM基于改进的秃鹰搜索优化算法优化极限学习机的数据回归预测》的项目。该项目旨在通过结合改进的秃鹰搜索优化算法(IBES-EO)和极限学习机(ELM),优化ELM模型以提高其预测精度,尤其针对多指标、高维数据以及噪声数据的处理进行了探讨。项目涵盖了从数据预处理到建模预测的一系列完整流程,并提供了代码案例和GUI界面设计思路。文档详细阐述了模型的工作机制、适用场景及其实现细节。 适合人群:对机器学习有兴趣,特别是对ELM、IBES-EO感兴趣的研究人员、开发人员和技术爱好者。 使用场景及目标:适用于各种回归预测问题,包括但不限于金融预测、气象预测、健康数据分析和智能交通系统等。目标在于提供一种高效的解决方案,提高在大规模复杂数据集中进行回归预测的能力,同时也展示了如何将生物启发式的优化算法运用于改进现有的机器学习模型,为实际应用提供更多可能。 阅读建议:文档按照章节顺序编排,从背景介绍到具体实现再到最终总结。初学者可以从头至尾通读,以掌握全流程概念和技能;有一定经验的读者可以直接跳转至自己感兴趣的环节,例如优化算法的具体设计或者代码实现部分。建议边学习边动手实验,以达到最佳的学习效果,并可通过提供的完整示例代码加深理解和记忆。此外,项目中有关于系统架构设计、API接口搭建等内容也可作为实际工程项目参考。

    智能海报设计助手:AI助力简易高效的海报制作解决方案

    内容概要:本文介绍了一款名为智能海报设计助手的应用程序,该应用程序是一款面向大众使用的AI工具,专注于解决普通人在设计高质量海报时遇到的问题。应用程序拥有强大的创意灵感库,可以根据用户提出的特定需求(例如主题、风格偏好等),快速推荐不同类型的海报设计方案,并配备智能化的一键素材筛选系统和自动排版功能,使得整个海报制作流程更为简化、高效,即使是无设计经验的用户也能独立完成高水平的作品。 适合人群:缺乏专业设计能力的广大非专业人士,如商家营销人员、活动策划者、个体创作者。 使用场景及目标:帮助需要短时间内完成海报宣传材料准备的工作人士提高工作效率,减少人力投入的同时获得媲美专业人士水准的成品。 阅读建议:文章旨在强调此智能海报设计器对普通用户的友好性和便捷性的特点,因此重点在于理解它是怎样利用先进技术来满足一般用户的实际应用需求的,而不仅仅关注具体的操作方法。这有助于潜在用户决定是否采用这一工具来进行海报创建工作。

    STL浅谈,从vector到map

    本文为C++ STL入门指南,详解vector、stack、map等核心容器的用法与底层原理,助你高效掌握标准模板库!

    大创项目驱动.zip

    大学生创业项目源码

    西门子S71511PLC实现PID程序控制阀门开度和模拟量转换:博途WinCC画面搭建完整演示,西门子S71511PLC实现PID程序控制阀门开度和模拟量转换:博途WinCC画面搭建完整演示,7自由度

    西门子S71511PLC实现PID程序控制阀门开度和模拟量转换:博途WinCC画面搭建完整演示,西门子S71511PLC实现PID程序控制阀门开度和模拟量转换:博途WinCC画面搭建完整演示,7自由度车辆动力学模型与联合仿真验证 软件使用:Carsim2020.0+Matlab Simulink2018b 适用场景:为了验证7自由度模型的正确性,与Carsim进行联合仿真验证,采用模块化建模方法,搭建了电机模型、参数计算、轮胎模型、7自由度动力学模型。 包含模块:电机模型模块1和2、参数计算模块、轮胎模型、7DOF模型、详细参考文献及说明文档。 包含:Matlab Simulink源码文件,详细建模说明文档,对应参考资料及相关文献, ,7自由度车辆动力学模型;联合仿真验证;Carsim2020.0;Matlab Simulink2018b;模块化建模方法;电机模型;参数计算模块;轮胎模型;详细参考文献;建模说明文档。,7自由度车辆模型联合仿真验证:Carsim2020.0与Matlab Simulink2018b应用实践

    【css酷炫效果】纯CSS实现立体纸张折叠动效

    对应博客地址:https://blog.csdn.net/u011561335/article/details/146313054

    大创项目前端.zip

    大学生创业项目源码

    大创项目_27.zip

    大学生创业项目源码

    【毕业设计】基于微信小程序的社区团购系统+ssm后端【源码+论文+答辩ppt+开题报告+任务书】.zip

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。

Global site tag (gtag.js) - Google Analytics