我有2个主机,我想将主机1上的子域指向主机2上的子域:
subdomain.hostone.com --> subdomain.hosttwo.com
我添加了一个CNAME记录来托管指向subdomain.hosttwo.com的记录,但我得到的是“ 400 Bad Request ”错误。
谁能看到我做错了什么?
答案 0 :(得分:13)
尝试将其更改为“subdomain - > subdomain.hosttwo.com”
CNAME
是某个域的别名,因此当您转到hostone.com的控制面板时,您不必将整个名称输入CNAME
别名。< / p>
就你得到的错误而言,你可以登录subdomain.hostwo.com查看日志吗?
答案 1 :(得分:11)
我认为有几个答案可以解决您的问题。
我同意最简单的(最好的搜索引擎优化解决方案)是301重定向。在IIS中,这是相当简单的,您可以为subdomain.hostone.com创建一个站点,在创建站点后,右键单击该站点并进入属性。单击打开的站点属性窗口的“主目录”选项卡。选择单选按钮“重定向到URL”,输入新站点的URL(http://subdomain.hosttwo.com),然后选中“上面输入的确切URL”,“此资源的永久重定向”复选框(此第二个复选框导致301重定向,而不是302重定向)。单击“确定”,即可完成。
或者您可以使用以下方法之一在http://subdomain.hostone.com网站上创建页面(取决于托管平台支持的内容)
PHP重定向:
<?
Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://subdomain.hosttwo.com" );
?>
ASP重定向:
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location","http://subdomain.hosttwo.com"
%>
ASP .NET重定向:
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://subdomain.hosttwo.com");
}
</script>
现在假设您的CNAME记录已正确创建,那么您遇到的唯一问题是为http://subdomain.hosttwo.com创建的网站使用的是共享IP,而主机标头则用于确定应显示哪个网站。要在IIS下解决此问题,请在Web服务器上的IIS管理器中右键单击subdomain.hosttwo.com的站点,然后单击“属性”。在显示的“网站”选项卡上,您应该看到要单击的IP地址旁边的“高级”按钮。在出现的“高级网站标识”窗口中,单击“添加”。选择subdomain.hosttwo.com已使用的相同IP地址,输入80作为TCP端口,然后输入subdomain.hosttwo.com作为Host Header值。单击确定,直到返回主IIS管理器窗口,您应该很高兴。打开浏览器,然后浏览到http://subdomain.hostone.com,即使您的网址显示http://subdomain.hosttwo.com
,您也会看到http://subdomain.hostone.com处的网站希望有帮助...
答案 2 :(得分:2)
听起来好像hosttwo.com上的web服务器不允许传递未定义的域。你还说你想做一个重定向,这实际上不是重定向的方法。如果您通过GoDaddy购买此域名,您可能只想使用他们的重定向服务。
答案 3 :(得分:2)
目前,许多网站所有者正在使用从CDN服务器提取数据的CDN服务。如果那是你的情况,那么你有两个选择:
通过添加CNAME记录创建子域并编辑DNS
不要创建子域,只创建指向临时DNS URL的CNAME记录。
此解决方案仅意味着从CDN中提取代码,这将显示它从cdn.sitename.com获取数据,但实际上是从CDN主机中提取数据。
答案 4 :(得分:1)
您只能将DNS名称设为另一个IP地址,因此,如果您使用的是虚拟主机,则无法使用DNS重定向。
当您在浏览器中输入subdomain.hostone.com时,它将使用DNS获取其IP地址(如果它是CNAME,它将继续尝试,直到它从A记录获得IP)然后它将连接到该IP并发送一个http请求
Host: subdomain.hostone.com
在http标题中的某个地方。
答案 5 :(得分:0)
设置301 redirect可能是最好/最简单的。不需要DNS黑客攻击。
答案 6 :(得分:0)
您可以通过多种非DNS方式执行此操作。 subdomain.hostone.com上的目标网页可以有HTTP redirect。 hostone.com上的web服务器可以配置为重定向(在Apache中很容易,不确定IIS)等等。