当前位置:首页 > 技术文章 > 正文内容

Nginx系列:配置跳转的常用方式

arlanguage5个月前 (12-20)技术文章30

随着应用服务的增多,服务可能部署在不同的服务器上。这些服务有可能存在IP端口Port、请求的ContextPath等一样的情况,怎么合理的配置他们的跳转呢?下面介绍三种常见的跳转方式。


0x01:根据不同域名判断跳转不同服务

就是根据在nginx.conf配置的server_name与域名或者(或者IP)匹配跳转不同的服务。

#当客户端访问www.domain.com,监听端口号为80,直接跳转到data/www目录下文件
server {
    listen       80;
       server_name  www.domain.com;
       location / {
          root   data/www;
          index  index.html index.htm;
    }
 }
 #当客户端访问bbs.domain.com,监听端口号为80,直接跳转到data/bbs目录下文件
server {
     listen       80;
     server_name  bbs.domain.com;
     location / {
         root   data/bbs;
         index  index.html index.htm;
     }
}


0x02:根据不同端口判断跳转不同服务

就是根据在nginx.conf配置的listen指令匹配跳转不同的服务。

#当客户端访问www.domain.com,监听端口号为8081,直接跳转到data/www目录下文件
server {
      listen       8081;
      server_name  www.domain.com;
      location / {
          root   data/www;
          index  index.html index.htm;
      }
}

#当客户端访问www.domain.com,监听端口号为8082,直接跳转到data/bbs目录下文件
server {
      listen       8082;
      server_name  www.domain.com;
      location / {
          root   data/bbs;
          index  index.html index.htm;
      }
}


0x03:根据链接的ContextPath不同跳转不同的服务器

主要根据每个应用服务器的ContextPath的普通,匹配跳转到不同的服务器。

#服务创建监听的端口号
server {
    #监听的端口号
    listen       80;
    #服务名称
    server_name  www.domain.com;
   # 匹配项目名称为bbs开头
   location /bbs/ {
       #  配置反向代理
       proxy_pass http://192.168.1.188:8081/;
       index  index.html index.htm;
   }
   # 匹配项目名称为blog开头
   location /blog/ {
        # 配置反向代理
        proxy_pass http://192.168.1.188:8082/;
       index  index.html index.htm;
   }
}

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/350.html

分享给朋友:

“Nginx系列:配置跳转的常用方式” 的相关文章

Nginx 全面攻略:动静分离、压缩、缓存、黑白名单、跨域、高可用

Nginx 作为一款高性能的 HTTP 服务器和反向代理服务器,被广泛应用于各类互联网项目中。它不仅能够提供静态文件服务,还支持动静分离、压缩、缓存、黑白名单、跨域、高可用等多种高级功能。本文将带你全面了解和掌握 Nginx 的这些强大功能。一、动静分离动静分离是指将动态请求与静态资源请求分离开来,...

Nginx反向代理:通过外网访问内网数据库(mysql)

Nginx反向代理:通过外网访问内网数据库前言项目场景:问题描述及分析:解决方案:1 在部署nginx里配置端口IP2 在外网nginx配置反向代理参数3 重启nginx前言部署nginx是基础,具体安装过程请参照这NGINX链接:link项目场景:提示:这里简述项目相关背景:例如:项目场景:示例:...

Linux系统非root用户下安装Nginx

通常使用Nginx或者Apache作为Web服务器时,默认监听80端口,因此默认会使用root用户去安装,而且,使用yum命令安装时,通常会安装到默认的路径下,默认路径通常是root用户才有执行权限的。如果不需要使用Nginx监听1024以下的端口,且对权限和网络管理比较严格时,能用非root权限解...

WordPress切换到Nginx服务器教程

这几天将几个WordPress的Web服务器从Apache切换到了Nginx,中间遇到了不少问题,因此记录一下,以便日后维护使用。对于WordPress站点来说,固定链接主要是通过根目录下的.htaccess文件来控制,切换服务器后,Nginx的rewrite格式和Apache的不同,需要修改。先卸...

高性能Linux服务器构建实战:运维监控、性能调优与集群应用

百万级字迹详解实战案例,篇幅因素故只展现pdf目录,完整解析获取方式在篇尾了!目录读者对象Web应用篇(1至第3章)数据备份恢复篇(4至第6章)网络存储应用篇(7和第8章)运维监控与性能优化篇(9和第10章)集群高级应用篇(11至第14章)勘误和支持第1篇 Web应用篇1 、轻量级HTTP服务器Ng...

Linux Shell

基本语法第一行第一行必须是 #!/bin/sh。它不是注释,#!/bin/sh 是对shell的声明,说明你所用的是那种类型的shell及其路径所在如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell如果脚本被编写为在Kornshell...