nginx default跳转

本文涉及的产品
.cn 域名,1个 12个月
简介: 一转眼2016到了,时间过得真的很快,想想那个时候狂发博文还是2012年左右呢?当时为了获得奖品,天天各种研究啥的,嘿嘿,后来换了工作又因为各种原因,一直没发过博文了,回想一下差不多已经两年多时间没发博文了吧!以后如果有时间争取多多分享自己的工作经验。
一转眼2016到了,时间过得真的很快,想想那个时候狂发博文还是2012年左右呢?当时为了获得奖品,天天各种研究啥的,嘿嘿,后来换了工作又因为各种原因,一直没发过博文了,回想一下差不多已经两年多时间没发博文了吧!以后如果有时间争取多多分享自己的工作经验。今天心血来潮,发表一个关于nginx跳转的问题。
需求:将不同域名无效的主机头跳转到各自域名的错误页面上。也就是说我现在一台服务器上配置了两个二级域名,比如是zzz.cn和abc.cn,下面有很多不同子站点,每个子站点一个配置文件,今天就用www.zzz.cn和www.abc.cn这两个子站点做一下说明。
环境:以前这台服务器只有一个zzz.cn域名的环境,我们当时在DNS设置中基本上采用的是泛域名的解析,后来根据业务的发展需要配置另外一个abc.cn域名,在配置abc.cn域名之前就已经做了一个默认的站点default,也就是说访问zzz.cn域名下所有的无效主机头都跳转到指定的错误页面去了,但是这样有个问题,zzz.cn域名的无效主机头跳转肯定没问题了,但是新增的abc.cn域名的无效主机头也跳转到zzz.cn域名的指定错误页面就不合适了。
关于最开始配置的default.conf配置文件如下:
server {
  listen 80 default;
  server_name dynamics;
  rewrite (.+) $scheme://www.zzz.cn/index/error redirect;
}
前提是开发已经写好了这个www.zzz.cn域名的指定错误页面http://www.zzz.cn/index/error可以访问啊。比如用户输入了wwww.zzz.cn或者abcd.zzzz.cn域名访问能跳转到http://www.zzz.cn/index/error页面。在nginx里面没有配置wwww和abcd子站点的配置。
更改需求后的配置:
还是修改default.conf文件做判断,修改后内容如下:
server {
  listen 80 default;
  server_name dynamics;
  if ($host ~* (.*)\.zzz.cn) {
  rewrite (.+) $scheme://www.zzz.cn/index/error redirect;
  }
  if ($host ~* (.*)\.abc.cn) {
  rewrite (.+) $scheme://www.abc.cn/index/error redirect;
  }
}
通过配置也就是说只要访问zzz.cn和abc.cn域名的无效主机头(nginx里面没有配置的server_name)都会走这个默认的配置文件,然后根据条件判断跳转到各自域名对应的指定错误页面上。这里我就截图说明一下。免得大家说无图无真相,也顺便打个广告哈~~


这里再看一下另外一个域名的测试结果





目录
相关文章
|
6月前
|
应用服务中间件 nginx
【报错】在nginx下启动,登录成功后页面不跳转
【报错】在nginx下启动,登录成功后页面不跳转
278 4
|
安全 网络协议 应用服务中间件
Nginx配置http跳转https
Nginx配置http跳转https
368 0
|
Java 应用服务中间件 PHP
Nginx中的location匹配和rewrite重写跳转
1、常用的Nginx正则表达式 2、location 3、rewrite 4、rewrite实例
1564 0
Nginx中的location匹配和rewrite重写跳转
|
5月前
|
应用服务中间件 nginx Windows
nginx实现网站url带参跳转 POST请求GET请求跳转
nginx实现网站url带参跳转 POST请求GET请求跳转
300 1
|
5月前
|
网络协议 安全 应用服务中间件
阿里云 网站https设置 sll申请与nginx跳转配置
阿里云 网站https设置 sll申请与nginx跳转配置
197 0
|
6月前
|
应用服务中间件 网络安全 nginx
nginx(1.13.7)首次安装出现:【make: *** 没有规则可以创建“default”需要的目标“build” 问题】解决措施
nginx(1.13.7)首次安装出现:【make: *** 没有规则可以创建“default”需要的目标“build” 问题】解决措施
569 0
|
应用服务中间件 nginx 数据安全/隐私保护
安装Nginx报错:make: *** 没有规则可以创建“default”需要的目标“build”。 停止。
安装Nginx报错:make: *** 没有规则可以创建“default”需要的目标“build”。 停止。
449 0
|
6月前
|
应用服务中间件 nginx
nginx配置访问qicaitun.com强制跳转www.qicaitun.com
nginx配置访问qicaitun.com强制跳转www.qicaitun.com
32 0
|
前端开发 应用服务中间件 nginx
Nginx的反向代理自动301跳转避坑
当Web服务器为Nginx时,若浏览器访问的uri最后不带斜杠,如www.xxx.com.cn/aaa,当aaa是一个目录时,会产生301跳转,且自动将uri补全为www.xxx.com.cn/aaa/,最后添加一个/。当前端存在Nginx反向代理时,就会存在一个坑。
3067 0
|
缓存 搜索推荐 应用服务中间件