nginx 做二级域名转发 (过滤端口号) 的问题

假设用 nginx 做了二级域名转发

例如:sec.demourl.com

server {
  listen 80;
  ..
  location / {
    if ($domain ~* "sec") {
        proxy_pass http://175.50.50.50:8081;
    }
  }
  ..
}

当用户访问 sec.demourl.com:8081 的时候,
和访问 sec.demourl.com 显示的是一样的

我想实现的是,xxx.com:8081 重定向到 xxx.com

即URL自动过滤掉端口号(强迫症)
请教一下大神,有没有什么实现的办法或者思路呢?

阅读 2.6k
1 个回答

类似这样做一个301重定向。

server {
  listen 80;
  listen 8081;
  server_name sec.demourl.com;
  ..
  if ($server_port = 8081) {
      return 301 http://$host$request_uri;
  }

  location / {
    if ($domain ~* "sec") {
        proxy_pass http://175.50.50.50:8081;
    }
  }
  ..
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题