nginx 绑定多域名的问题

2021-09-13 16:32:05 +08:00
 nilai
在 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;

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

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

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

第二种没什么问题,但是以防万一哪个 Nginx 版本改逻辑,后面 server_name 覆盖之前的,总归是个风险
AoEiuV020
2021-09-13 16:42:12 +08:00
@AoEiuV020 我可能被哪里的教程坑了,好像并没有这里 alias 的用法,
nilai
2021-09-13 16:45:04 +08:00
@pupboss 现在主要是有个 nginx 的 admin gui 不好做第一种方式的实现, 只用的第二种来实现的, 我就担心 server_name 会被覆盖,
ch2
2021-09-13 16:51:26 +08:00
看源代码
nilai
2021-09-13 16:57:18 +08:00
@ch2 源码中对这块怎么处理的?
Foxkeh
2021-09-14 08:17:31 +08:00
我是每个域名单独做一个{domain}.conf 配置文件, 维护起来比较省心

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/801574

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX