![在没有 Cpanel 的情况下,我在 VPS 服务器中配置 CNAME](https://linux22.com/image/701563/%E5%9C%A8%E6%B2%A1%E6%9C%89%20Cpanel%20%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%EF%BC%8C%E6%88%91%E5%9C%A8%20VPS%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%AD%E9%85%8D%E7%BD%AE%20CNAME.png)
我是 Linux/服务器配置的新手,我正在尝试将特定域的所有子域重定向到特定的 URL:
*.domain.com -> domain.com/test
通过 Cpanel 可视化支持和 CNAME 我找到了它,但在没有 cpanel 的 VPS 服务器中我找不到在哪里去做这个。
此链接解释了我需要做什么,但没有说明我应该在哪里做。(http://www.zytrax.com/books/dns/ch8/cname.html)
有人能帮我吗?
答案1
您不能CNAME
仅使用 DNS(记录)将主机名重定向到 URL。
您需要了解很多事情,但正确的路径可能是这样的(或类似的):
- 您需要查明您的 VPS 是否是您的域名的主名称服务器。如果是:
假设您有 BIND。您的文件位置可以从
/etc/bind/named.conf
(或其中包含的任何其他配置文件,如named.conf.local
)中找到。应该有一行zone "example.com" { type master; file "/etc/bind/db/example.com"; };
在找到的区域文件中,您可以开始添加
* IN CNAME example.com.
和更新序列号,使其采用当前日期和订单号的@ IN SOA
格式。YYYYMMDDNN
- 通过命令重新加载改变的区域文件
rndc reload
。 VirtualHost
在您的 Apache 配置中添加重定向(例如通过在 中添加新文件/etc/apache2/sites-available/subdomains.example.com
):<VirtualHost *:80> ServerName subdomains.example.com ServerAlias *.example.com Redirect / http://example.com/test </VirtualHost>
a2ensite subdomains.example.com
使用和启用站点service apache2 reload
。
无论步骤是否正是这些,都会有相应的阶段。