V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
nilai
V2EX  ›  问与答

nginx 绑定多域名的问题

  •  
  •   nilai · 2021-09-13 16:32:05 +08:00 · 926 次点击
    这是一个创建于 1170 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在 nginx 中,某个站点需要绑定多个域名
    我测试了两种办法:

    一,常见的:
    server_name t1.xx.com t2.xx.com t3.xx.com;

    二,
    server_name t1.xx.com;
    server_name t2.xx.com;
    server_name t3.xx.com;

    这两种方式本地测试均能正常工作。

    请问第二种方式是否能正常使用,以及第二种方式是否会有坑?
    8 条回复    2021-09-14 08:17:31 +08:00
    pupboss
        1
    pupboss  
       2021-09-13 16:38:33 +08:00
    你干脆通配符绑定 *.xx.com 得了,也没啥坏处,或者写个正则 t\d\.xxx\.com
    AoEiuV020
        2
    AoEiuV020  
       2021-09-13 16:40:12 +08:00
    第一种没毛病吗?我这边是用 alias 的,
    server_name aaa.com alias bbb.com ccc.com;

    不过这种东西能用就好,为什么会觉得有坑?
    pupboss
        3
    pupboss  
       2021-09-13 16:41:14 +08:00
    一般来讲还是建议第一种,官方示例给的就是 server_name 后接多个域名,参考: http://nginx.org/en/docs/http/server_names.html

    第二种没什么问题,但是以防万一哪个 Nginx 版本改逻辑,后面 server_name 覆盖之前的,总归是个风险
    AoEiuV020
        4
    AoEiuV020  
       2021-09-13 16:42:12 +08:00
    @AoEiuV020 我可能被哪里的教程坑了,好像并没有这里 alias 的用法,
    nilai
        5
    nilai  
    OP
       2021-09-13 16:45:04 +08:00
    @pupboss 现在主要是有个 nginx 的 admin gui 不好做第一种方式的实现, 只用的第二种来实现的, 我就担心 server_name 会被覆盖,
    ch2
        6
    ch2  
       2021-09-13 16:51:26 +08:00
    看源代码
    nilai
        7
    nilai  
    OP
       2021-09-13 16:57:18 +08:00
    @ch2 源码中对这块怎么处理的?
    Foxkeh
        8
    Foxkeh  
       2021-09-14 08:17:31 +08:00
    我是每个域名单独做一个{domain}.conf 配置文件, 维护起来比较省心
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5656 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 06:41 · PVG 14:41 · LAX 22:41 · JFK 01:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.