Ste*_*ins 5 domain-name-system nginx subdomain
这似乎是一个简单的问题,但经过一番谷歌搜索后,我似乎无法找到答案。
我有一个临时服务器,我想尽可能地模拟生产服务器。假设我拥有example.com
并决定使用blog.example.com
. 我希望能够在使用暂存地址将博客推送到生产之前暂存博客blog.stage.example.com
。我宁愿这样做而不是购买另一个域,例如stage-example.com
或使用blog-stage.example.com
.
显然,我想blog.stage.example.com
指向在登台环境(例如 IP 1.1.1.1)blog.example.com
上运行的服务器,并指向在生产环境(例如 IP 2.2.2.2)上运行的服务器。
我将 Nginx 用于我的网络后端,并使用 Gandi 作为托管服务提供商,在其中管理我的 DNS 区域文件。
是否可以使用多级子域配置我的域名?或者,我是否坚持使用命名约定,例如blog-stage.example.com
?或者,也许有更好的方法来管理我不知道的问题?
如果可能,DNS 区域文件会是什么样子?
最后,如果可能的话,Nginx 配置文件会是什么样的?
正确答案来自@sysadmin1138和@cjc:
Nginx 配置
您的 nginx 虚拟主机将如下所示:
server {
listen 1.1.1.1:80;
server_name blog.stage.example.com;
[...]
}
server {
listen 2.2.2.2:80;
server_name blog.example.com;
[...]
}
Run Code Online (Sandbox Code Playgroud)
这假设您可以为您的 Web 服务器分配两个 IP 地址。通过上述配置,一台虚拟服务器将绑定到 1.1.1.1:80 并响应 blog.stage.example.com,另一台服务器将绑定到 2.2.2.2:80 并响应 blog.example.com。设置 DNS 将取决于您的 DNS 管理方式,但它应该是可行的。
域名系统
子域名和托管有点未定义,您最好询问他们是否支持类似的内容。很可能定义一个包含多个标签的 A 记录。例如,您可以将其放入 example.com 的 DNS 区域中:
blog.stage 1.1.1.2
blog 1.1.1.1
Run Code Online (Sandbox Code Playgroud)
它可能会起作用。绑定 DNS 确实支持此类事情,但您的托管提供商是否允许您这样做完全是另一回事。
更好的计划是使用博客以外的东西。
betablog 1.1.1.2
blog 1.1.1.1
Run Code Online (Sandbox Code Playgroud)
因为这更有可能得到您的提供商的支持。
我对 Nginx 不太熟悉,无法为此提供多个虚拟主机示例。
归档时间: |
|
查看次数: |
9589 次 |
最近记录: |