OpenResty 通过二级域名做跳转

简介: if ( $host ~* (\b(?!www\b)\w+)\.\w+\.\w+ ) {   #获取nba.test.com域名中的nba   set $subdomain $1;  } location / {  rewrite_by_lua '    --只有二级域名不是www或空才做跳转    if ngx.

if ( $host ~* (\b(?!www\b)\w+)\.\w+\.\w+ ) {
  #获取nba.test.com域名中的nba
  set $subdomain $1;  
}

location / {
  rewrite_by_lua '
    --只有二级域名不是www或空才做跳转
    if ngx.var.subdomain ~= "www" and ngx.var.subdomain ~= "" then
      --可以根据二级域名来传不同的参数
      local id = ""
      if ngx.var.subdomain == "a" then
        id = "1"
      else
        id = "2"
      end
      --302为ngx.redirect的参数,ngx.redirect可以发出一个http 301或302的重定向
      return ngx.redirect("/c/index.html?id="..id,302)  
    end
  ';
  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_pass http://backend;
}

location ~.*\.(html|htm)$
{
  root html;
  index index.html index.htm;
}

相关文章
|
4天前
设置博客域名跳转实现方案(免费版)
设置博客域名跳转实现方案(免费版)
44 1
|
4天前
|
存储 缓存 负载均衡
阿里云DNS常见问题之域名DNS跳转有问题如何解决
阿里云DNS(Domain Name System)服务是一个高可用和可扩展的云端DNS服务,用于将域名转换为IP地址,从而让用户能够通过域名访问云端资源。以下是一些关于阿里云DNS服务的常见问题合集:
|
9月前
|
Apache
Apache域名跳转----配置rewrite模块
Apache域名跳转----配置rewrite模块
253 0
|
11月前
PHP301跳转不带www域名的网址
PHP301跳转不带www域名的网址
|
XML 开发框架 .NET
泛解析泛域名301重定向带参数跳转在iis的web.config中的设置方式 二级域名301重定向
泛解析泛域名301重定向带参数跳转在iis的web.config中的设置方式 二级域名301重定向
586 0
泛解析泛域名301重定向带参数跳转在iis的web.config中的设置方式 二级域名301重定向
|
移动开发 小程序 UED
web-view不配置业务域名不可以跳转外部链接
遇到需要项目跳转外部链接,想通过web-view跳转,但是发现打不开 经过查阅相关资料和进行相关测试,不配置业务域名这是无法实现的
141 0
|
域名解析 Docker 容器
国外短域名的使用及跳转方法
国外短域名的使用及跳转方法
国外短域名的使用及跳转方法
|
缓存 安全 搜索推荐
Nginx配置4种模式跳转到指定统一域名
Nginx配置4种模式跳转到指定统一域名
1103 0
|
Python
Django如何设置首页(默认输入域名或者ip即可跳转到指定页面)
Django如何设置首页(默认输入域名或者ip即可跳转到指定页面)
856 0
|
.NET 开发框架
IIS&ASP.NET 站点IP跳转到域名
前言:先到微软的 https://www.iis.net/downloads/microsoft/url-rewrite  下载URL Rewrite 目标:输入ip跳转到域名所在的网站 比如58的115.
1675 0