以下配置可以将动态请求交给后台的tomcat
location ~*\.(jsp|do|action)$
{
index index.jsp;
proxy_pass http://localhost:9081;
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;
}
location ~^/(WEB-INF)/{
deny all;
}
http://test.test.com/HelloWorld.jsp
类似以上的请求,经过测试,并不会因为 proxy_pass http://localhost:9081;受到影响,照样是可以取到完整的请求路径,不会得到localhost:9081这样的。
一个完整的配置
server {
listen 80;
server_name www.frady.info *.frady.info;
root /webapps/yoursite/;#此处定义了域名的根目录
location / {
index index.html index.htm index.action;
}
location ~ .*.(gif|jpg|jpeg|png|bmp|swf|css|js|html)$ {
expires 30d;
}
location ~*.(jsp|do|action)$
{
index index.jsp;
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;
}
location ~^/(WEB-INF)/{
deny all;
}
}
启动
/user/local/nginx/sbin/nginx
重启
/user/local/nginx/sbin/nginx -s reload
停止
/user/local/nginx/sbin/nginx -s stop
停止
ps -ef | grep nginx
强制停止Nginx
pkill -9 nginx
以下是几个伪静态的例子
#以下可以把/helo-frady-mypass.html转发到/hello.action?mts=frady&pwd=mypass
#两个一起使用的话,这个得放到前面
rewrite "^/hello-([a-z0-9\_]+)-([a-z0-9\_]+)(.*)\.html" /hello.action?mts=$1&pwd=$2;
#以下可以把/helo-frady.html转发到/hello.action?mts=frady
rewrite "^/hello-([a-z0-9\_]+)(.*)\.html" /hello.action?mts=$1;
if (!-f $request_filename){
rewrite (.*) /hello.action; #此配置需要放到location里
}
if (!-e $request_filename) {
rewrite ^/(.+\.(html|xml|json|htm|php|jsp|asp|shtml))$ /hello.action last;
}
rewrite ^/product/([0-9]+)\.html$ /showWare.action?ware.wareId=$1 last;
location / {
index index.html index.htm;
if (!-f $request_filename){
rewrite (.*) /template.action;
}
}
正则表达式匹配,其中:
* ~ 为区分大小写匹配
* ~* 为不区分大小写匹配
* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配
文件及目录匹配,其中:
* -f和!-f用来判断是否存在文件
* -d和!-d用来判断是否存在目录
* -e和!-e用来判断是否存在文件或目录
* -x和!-x用来判断文件是否可执行
flag标记有:
* last 相当于Apache里的[L]标记,表示完成rewrite
* break 终止匹配, 不再匹配后面的规则
* redirect 返回302临时重定向 地址栏会显示跳转后的地址
* permanent 返回301永久重定向 地址栏会显示跳转后的地址
集群的配置更简单,在http节点内添加
upstream myblance {
server 192.169.1.100:8080;
server 192.169.1.100:28080;
ip_hash;#可以实现固定ip访问到固定的后台,解决session的问题
}
然后转发到proxy_pass http://myblance;
反向代理做镜像
server
{
listen 80;
server_name www.frady.com;
location / {
proxy_pass http://www.abctest.cn/;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
以上代理,后台服务器可能拿到的ip不大对,以下更合适些
server {
listen 80;
server_name *.frady.info ;
location /
{
index index.jsp;
proxy_pass http://mybalance;
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;
}
}
分享到:
相关推荐
本文档主要介绍了如何在Windows环境下部署Nginx和Tomcat集群,包括软件的下载、安装、配置以及集群的基本构建。 #### 二、安装规划 在部署集群之前,需要明确安装规划,以便合理分配资源和确保系统的高效运行。 - *...
nginx 和tomcat 集群,内含nginx 和tomcat 8 的集群配置,有例子,可测试: http://127.0.0.1:8080/test1/ 和 http://127.0.0.1:8080/test2/
6. **Tomcat集群配置**:在Tomcat端,需要配置集群以共享session信息,确保用户在不同节点之间切换时,其会话状态能够保持一致。 7. **日志管理**:Nginx可以集中处理所有请求的日志,便于监控和分析系统运行情况。...
配置Nginx+Tomcat集群负载均衡的第一步是安装Nginx和多个Tomcat实例。在多台服务器上部署Tomcat,形成一个集群,确保服务的高可用性。每台服务器上的Tomcat实例都需要配置相同的应用,以处理相同类型的请求。 接...
在Windows环境下,配置Nginx和Tomcat集群架构,需要以下步骤: 1. 安装Nginx和Tomcat:分别下载并安装两个服务器的Windows版本。 2. 配置Nginx:编写Nginx配置文件,设置反向代理规则,指向Tomcat实例的IP和端口,...
总结来说,Linux环境下通过Nginx+Tomcat集群建设,可以构建出一个高效、可扩展的Web服务架构,同时利用Nginx的反向代理功能和负载均衡策略,确保系统的稳定性和性能。在实际操作中,还需要根据具体业务需求进行定制...
nginx,tomcat集群,session共享,基于memcache 包含nginx配置,tomcat配置,以及tomcat所需要的jar 不包含nginx,tomcat,jdk,memcache的安装
nginx+tomcat集群配置文件
为解决这个问题,我们可以利用Redis作为中央session存储,实现Nginx和Tomcat集群间的session共享。 首先,让我们理解Nginx、Tomcat和Redis的角色: 1. Nginx:作为前端反向代理服务器,负责接收用户的请求,并根据...
windowXP下搭建nginx-1.7.10和apache-tomcat-8.0.18的集群 已经配置好,下载后直接启动三个tomcat和nginx,然后访问http://localhost/即可。
linux下nginx-tomcat集群及session共享,亲测成功,下载的文件包含了所有需要的jar包及nginx,memcached安装,配置,由于试了很多种方法,下了很多包,有些也需要积分,所以这里下载要些积分留着用,不好意思了,...
【Nginx Tomcat集群部署】是Web服务领域常见的高可用性和负载均衡解决方案,通过结合Nginx的反向代理和负载均衡功能与Tomcat的Java应用服务器能力,可以构建出稳定且高效的Web应用程序环境。以下是对这个主题的详细...
【标题】:“nginx+tomcat集群实现”是一个高级IT主题,涉及到网络服务器的高可用性和负载均衡配置。在这个场景中,我们使用nginx作为反向代理和负载均衡器,而tomcat则是运行Java web应用程序的服务器。这样的组合...
本文将详细介绍如何在Nginx和Tomcat集群中实现Session复制。 ### 一、测试环境搭建 1. **软件列表**: - Nginx - PCRE (Perl Compatible Regular Expressions) - Nginx-upstream-jvm-route (用于处理Java路由) ...
以下将详细介绍如何在Linux环境下配置Nginx + Tomcat集群。 **一、环境准备** 1. **Nginx**:提供静态文件服务、反向代理和负载均衡。可以从官方站点`http://nginx.org/en/download.html`下载最新版本。 2. **...
基于ssm+shiro+redis+nginx tomcat服务器集群管理项目 基于ssm+shiro+redis+nginx tomcat服务器集群管理项目 基于ssm+shiro+redis+nginx tomcat服务器集群管理项目 基于ssm+shiro+redis+nginx tomcat服务器集群管理...
在深入了解如何实现Nginx与Tomcat集群的部署和负载均衡之前,我们需要先了解一些基本的概念以及版本信息。 - **集群**:通常指一组计算机通过网络连接在一起工作,如同一个整体一样对外提供服务。在Web应用中,集群...
nginx 配置tomcat8集群
nginx+tomcat集群demo,已测试,可放心下载使用!包含 nainx最新包。 温馨提示此demo是windows环境测试。 启动nginx:start nginx或nginx.exe。 关闭nginx:nginx.exe -s stop或nginx.exe -s quit。 访问方式:...
"Nginx+Tomcat集群配置"是一个常见的解决方案,它结合了Nginx的高性能反向代理能力和Tomcat的Java应用服务器功能,以实现高效能的Web服务。下面我们将详细探讨这个配置的相关知识点。 首先,Nginx是一款轻量级的...