最初发布于 Stack Overflow。
这可能是 Server Exchange 的问题,但我开始觉得这里很舒服,我觉得这里肯定有人知道答案。我们目前正在 Rails 中重建一个 php 站点,并将正在重建的新站点放在 linode 盒 [nginx] 上。实时域位于一个 Slicehost 盒 [也是 niginx] 上。启动后,我们计划将整个站点转发到 linode 盒,但希望设置一个子域 (beta.domain.com) 以进行测试。我知道我们可以做一个简单的转发/CNAME 记录,但我们希望保留相同的 beta.domain.com 地址。
非常感谢任何帮助。
注意:我们目前对这两个域拥有完全的控制权。
答案1
在重读了你的问题几次之后,我不确定我是否明白你在问什么,但听起来你想这样做:
预发布:
- beta.domain.com 解析为 linode box
- www.domain.com 解析为slicehost
发布后
- beta.domain.com 仍然解析为 linode box
- www.domain.com 现在解析为 linode box
确保您匹配 lighttpd 配置中列出的 *.domain.com 上的通配符$HTTP["host"] =~ "(^|\.)domain\.com$"
,然后在准备开始时将 beta.domain.com 的 A 记录更改为您的 linode 框。
答案2
您可以在同一级别的子域和通配符域中拥有 A/CN 条目。明确声明的 sudbomain (beta.domain.com.) 将被视为优先处理。
我有这样的:
mail.2x.to. 86400 IN CNAME ghs.google.com.
*.2x.to. 86400 IN A 62.75.210.44
结果是
joe@joe-laptop:~/Desktop/Crawler$ dig mail.2x.to
; <<>> DiG 9.7.0-P1 <<>> mail.2x.to
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14874
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;mail.2x.to. IN A
;; ANSWER SECTION:
mail.2x.to. 86400 IN CNAME ghs.google.com.
ghs.google.com. 86399 IN CNAME ghs.l.google.com.
ghs.l.google.com. 299 IN A 74.125.43.121
;; Query time: 122 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Wed Sep 15 16:37:47 2010
;; MSG SIZE rcvd: 92
joe@joe-laptop:~/Desktop/Crawler$ dig catched-by-wildcard.2x.to
; <<>> DiG 9.7.0-P1 <<>> catched-by-wildcard.2x.to
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18119
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;catched-by-wildcard.2x.to. IN A
;; ANSWER SECTION:
catched-by-wildcard.2x.to. 86400 IN A 62.75.210.44
;; Query time: 268 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Wed Sep 15 16:38:20 2010
;; MSG SIZE rcvd: 59