V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
LOVOQ
V2EX  ›  NGINX

请教各位大佬 如何设置 nginx 可使不存在的二级地址跳转到存在的二级地址上

  •  
  •   LOVOQ · 2020-09-24 01:53:19 +08:00 · 2057 次点击
    这是一个创建于 1540 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请教各位大佬 如何设置 nginx 可使不存在的二级地址跳转到存在的二级地址上

    比如说 我在 dns 配置了 1,2,和*.110.com 的 A 记录。实际配置了页面的有 1 跟 2 的 110.com ,我想让用户键入 3.110.com 或其他可能性的*.110.com 都能跳转回 1.110.com

    请问下该如何设置 百分感谢!

    7 条回复    2020-10-01 04:47:46 +08:00
    cominghome
        1
    cominghome  
       2020-09-24 08:42:30 +08:00
    server_name 是可以使用正则的,所以这个需求应该很好实现,加一个这样的 server 就行

    ```
    server {
    listen 80;
    server_name *.110.com;

    return 301 http://1.110.com/$request_uri;
    }
    ```

    但是不清楚对[1|2].110.com 有没有影响,自测一下
    ragnaroks
        2
    ragnaroks  
       2020-09-24 18:04:49 +08:00
    需要 lua 等拓展配合,取到第三级字符串做匹配,如果不是"1",则显性跳转,否则继续
    LOVOQ
        3
    LOVOQ  
    OP
       2020-09-25 02:30:36 +08:00
    @cominghome 回头我尝试一下回复效果,感谢答疑。

    @ragnaroks 有点门槛,还是希望能通过通配符解决 2333 。感谢答疑。
    LOVOQ
        4
    LOVOQ  
    OP
       2020-09-25 02:44:23 +08:00
    @cominghome 8 行 跳不了 蛤蛤蛤还是停留在原地址 比如 aaa.110.com 还是原地址。而且由于我开了 404 和单站 https 所以直接提示证书无效。
    cominghome
        5
    cominghome  
       2020-09-25 08:06:31 +08:00
    @LOVOQ 我这测试是好的
    demo.conf
    ```
    server {
    listen 80;
    server_name *.110.com;

    return 301 http://1.110.com$request_uri;
    }

    server {
    listen 80;
    server_name 1.110.com;

    location / {
    default_type text/plain;
    return 200 "Hello world..";
    }

    }
    ```
    host
    ```
    127.0.0.1 a.110.com b.110.com 1.110.com
    ```

    访问 a/b.110.com 都能 301 到 1.110.com
    LOVOQ
        6
    LOVOQ  
    OP
       2020-09-27 10:39:27 +08:00
    @cominghome 晚些实装后回复 感谢赐教 辛苦了
    LOVOQ
        7
    LOVOQ  
    OP
       2020-10-01 04:47:46 +08:00
    @cominghome 我弄明白我缺啥了。。。我缺一个通配符证书。。。哈哈哈哈 辛苦大佬答疑解惑
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4860 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 03:44 · PVG 11:44 · LAX 19:44 · JFK 22:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.