服务器构架如下nginx+tomcat+mysql
####################nginx.conf#########################
user www-data;
worker_processes 1;
error_log /var/log/nginx/error.log;
pid /var/run/nginx.pid;
events {
use epoll;
worker_connections 10240;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
#这里设置一下log记录方式,方便使用awstats统计。
log_format main '\$remote_addr - \$remote_user [\$time_local] '
'"\$request" \$status \$body_bytes_sent '
'"\$http_referer"
"\$http_user_agent"';
#log的文件名用host的域名来定,呵呵,省得server那里指定了
access_log /var/log/nginx/\$host.access.log combined;
sendfile on;
# tcp_nopush on;
keepalive_timeout 65;
tcp_nodelay on;
gzip off;#这里要关闭gzip,因为用代理后,再用gzip会有奇怪的问题
#这里是限制速度
limit_zone one \$binary_remote_addr 10m;
limit_req_zone \$binary_remote_addr zone=rone:10m rate=10r/s;
#指定缓存文件的目录,如果有多个nginx,这个可以共享使用,呵呵,一般人我不告诉他
proxy_cache_path /home/web/cache levels=1:2
keys_zone=JianelCache:100m max_size=100m;
#引入其它的conf
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
#######################server######################
# 定义后台的tomcat,可以加多个,实现负载均衡
upstream tomcat {
server 127.0.0.1:8080;
ip_hash;#根据ip来选择后端的tomcat,使得同一个ip只访问一个tomcat
}
server {
listen 80;
server_name localhost;#域名
location / {
root /var/www;
index index.jsp;
#使/abc这样的目录自动转到/abc/
if (-d \$request_filename){
rewrite ^/(.*)([^/])\$ http://\$host/\$1\$2/ permanent;
}
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/nginx-default;
}
#这里把首先会查看html文件在不在缓存内,没有就转到后台tomcat处,并把返回内容缓存下来,以被下次使用
#后台的tomcat会把htmlrewrite成jsp再处理,呵呵,这样就不需要真的静态化
location ~ \.html {
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For
\$proxy_add_x_forwarded_for;
proxy_set_header Host \$http_host;
proxy_cache JianelCache;
proxy_cache_valid 200 302 24h;#200和302状态码保存1小时
proxy_cache_valid 301 1d;#301状态码保存一天
proxy_cache_valid any 10h;#其它的保存一分钟
if ( !-f \$request_filename) {
proxy_pass http://tomcat;
}
}
#这里把jsp都转到后端tomcat处理
location ~ \.jsp {
proxy_pass http://tomcat;
proxy_set_header X-Real-IP \$remote_addr;
proxy_set_header X-Forwarded-For
\$proxy_add_x_forwarded_for;
proxy_set_header Host \$http_host;
#这里是限速,省得tomcat老是挂掉,呵呵
limit_conn one 2;
limit_req zone=rone burst=5;
}
}
分享到:
相关推荐
在现代的Web服务器架构中,Nginx作为高性能的反向代理服务器和负载均衡器,常被用来与Tomcat等应用服务器配合使用,以提高网站的响应速度、稳定性和安全性。本文将详细解析在Linux环境下如何安装和配置Nginx与Tomcat...
将Nginx与Tomcat结合使用,可以有效实现这一目标。 **配置示例**: - **Tomcat server.xml配置**:这部分配置通常用于定义Tomcat的运行环境,包括端口、连接器等信息。示例中的`1tomcatserver.xmlļж˿ںŶΪͬ`...
总之,Nginx与Tomcat的组合使用能够构建高效的Web服务架构,处理文件下载、上传,通过进度条提供更好的用户体验,并通过合理的缓存策略减轻服务器负担。理解并熟练运用这些技术,对于提升Web应用的性能和用户体验至...
整篇文章通过具体的实践案例,详细说明了如何在不同的操作系统上使用Tomcat和Nginx搭建视频服务器,并通过ffmpeg工具处理视频文件以支持HLS协议的视频点播服务。这是一个涉及Web服务器配置、音视频编码和网络安全等...
在本场景中,Nginx将扮演负载均衡器和前端服务器的角色,接收来自不同域名的请求,并将其转发到相应的Tomcat实例处理。 **Tomcat** 是一个开源的Java Servlet容器,主要用来部署和运行Java Web应用程序。在这里,...
Nginx++Keepalived+Tomcat负载均衡&动静分离配置 本文主要介绍了Nginx、Keepalived和Tomcat的负载均衡和动静分离配置,旨在帮助读者了解如何搭建高可用、高性能的Web应用系统。 一、环境准备 在开始配置之前,...
Nginx的负载均衡和静态资源处理、Tomcat的动态内容渲染以及Redis的缓存功能,共同优化了系统的整体性能,使得服务能够应对大规模并发请求,同时保证了良好的用户体验。在实际部署中,还需要考虑监控、日志、安全等...
本文将详细讲解如何使用Nginx作为负载均衡器,实现对Tomcat和WebLogic集群的负载均衡以及故障处理。我们将遵循由浅入深的原则,适合初学者和进阶者学习。 首先,我们来看看基础环境。系统为Redhat7.5,JDK版本为1.8...
通过以上步骤,你可以在 Windows 系统上成功配置 Nginx 作为 Tomcat 的反向代理,并实现基本的功能需求。此外,还可以根据具体的应用场景进一步优化配置文件,比如添加 SSL 支持、设置缓存策略等。
### Nginx与Tomcat整合的关键知识点 #### 一、Nginx与Tomcat整合概述 - **背景介绍**:Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点是占有内存少...
【Nginx与Tomcat的关系】Nginx和Tomcat是两种不同的Web服务器,它们在IT行业中常被结合使用以优化Web应用的性能和架构。Nginx以其高性能、轻量级的特性,通常用于处理静态内容和反向代理任务,而Tomcat则是一个Java...
### Nginx+KeepAlived+Tomcat负载架构详解 #### 一、概述 随着互联网应用的日益增多,单一服务器已经难以满足高并发、高可用性的需求。因此,越来越多的企业开始采用集群技术来提高系统的稳定性和扩展性。本文将...
在IT行业中,构建高效、可扩展的Web服务是至关重要的,而Nginx与Tomcat的结合使用就是一种常见的解决方案。Nginx以其强大的反向代理、负载均衡和静态资源处理能力著称,而Tomcat则是一个广泛使用的Java应用服务器,...
由于Tomcat处理动态内容的能力较强,但在处理静态资源时效率较低,因此通常与Nginx配合使用,让Nginx负责静态资源,Tomcat处理动态请求。 配置Nginx+Tomcat集群负载均衡的第一步是安装Nginx和多个Tomcat实例。在多...
这种模式结合了Nginx的反向代理和负载均衡能力,Tomcat作为Java应用服务器处理业务逻辑,而Redis则用于高效地存储和共享用户会话(session)数据。下面我们将详细探讨这些技术组件及其相互作用。 **Nginx** Nginx...
Nginx与Tomcat的负载均衡 Nginx与Tomcat的负载均衡是指通过Nginx服务器来实现Tomcat集群的负载均衡,以提高系统的高性能和可扩展性。下面是实现负载均衡的详细步骤和知识点: 一、环境准备 * Nginx 1.8.0 * ...
### Nginx与Tomcat HTTPS至HTTP反向代理配置详解 #### 一、Windows环境下Nginx与Tomcat HTTPS至HTTP反向代理配置 ##### 1. 安装Nginx ...希望这些信息能帮助您顺利完成Nginx与Tomcat的集成配置。
在构建分布式系统时,Session共享是一个关键问题,特别是在使用多种服务器技术如Nginx、Tomcat和Memcached的环境中。本文将深入探讨如何利用这些组件实现跨服务器的Session共享,以确保用户在登录后能够在整个系统中...
在IT行业中,尤其是在服务器部署和优化领域,Nginx与Tomcat的组合是常见的解决方案,因为它们各自在处理不同类型的请求上具有优势。Nginx以其高性能、低资源消耗著称,适合处理静态内容和反向代理任务;而Tomcat作为...
### Nginx 反向代理实现多 Tomcat 负载均衡详解 ...通过以上步骤,我们成功实现了使用 Nginx 对多个 Tomcat 实例进行负载均衡的配置。这种方式不仅能够提高应用的服务能力,还能增加系统的稳定性和可靠性。