我是 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
。
无论步骤是否正是这些,都会有相应的阶段。