DNS 301 重定向问题

Posted

技术标签:

【中文标题】DNS 301 重定向问题【英文标题】:DNS 301 redirect issue 【发布时间】:2015-11-28 12:08:25 【问题描述】:

我在 Namecheap 控制台中实现了 DNS 级别 301 重定向,它将我的旧子域 assets.websitename.com 重定向到 websitename.com/assets

但是,当尝试访问assets.websitename.com/css/main.css 时,客户端将被重定向到websitename.com/css/main.css/assets。我打算将用户重定向到websitename.com/assets/css/main.css

所以我的问题是:

如何正确配置 301 重定向?

【问题讨论】:

您很可能需要重写规则,无论您运行的是哪个 Web 服务器。否则,您必须在(后端)应用程序本身中处理此问题 - 通过代码映射 url。 【参考方案1】:

阿帕奇 如果在 Apache Web 服务器中使用 .htaccess 或类似的:

RewriteEngine On
RewriteBase /
RewriteCond %HTTP_HOST assets.websitename.com$ [NC]
RewriteRule ^(.*)$ http://websitename.com/assets/$1 [L,R=301] 

名字便宜 由于您使用的是 Namecheap 控制面板,请尝试以下操作: 确保在 IP 地址/URL 框的末尾有一个斜杠。所以它应该是这样的:

HOSTNAME   IPADDRESS/URL                     REDIRECTTYPE    
assets     http://websitename.com/assets/    URL Redirect

注意http://websitename.com/assets/末尾的斜线

【讨论】:

301 重定向是在我的域的 DNS 管理控制台中完成的,而不是使用 apache。 您的域名注册商是谁? 修改了答案以包含 namecheap url 重定向控制面板的解决方案 谢谢,这解决了我的问题!

以上是关于DNS 301 重定向问题的主要内容,如果未能解决你的问题,请参考以下文章

使用 DNS 将子域重定向到特定 url

Azure 网站 301 重定向 - 我应该把它放在哪里?

NGINX - 301/永久重定向(*.cloudapp.azure.com 到 domain.com)

避免 301 重定向缓存

如何撤消 301 重定向?

为 301 重定向配置 Amazon 重定向规则