2009-02-27 91 views
11

我在posterous.com上运行一个博客,他们可以托管我的域名,如果我在我的域名注册商的自定义DNS工具中为他们的IP创建一条A记录。DNS大师:如何使用DNS将www.domain.com转发到domain.com?

问题是我希望我的域名总是读取domain.com,所以我想让我的DNS重新映射到www.domain.com到domain.com的任何请求,并且我不能使用.htaccess或PHP或其他服务器方法,因为它只是一个博客界面。

到目前为止,我已经试过:

 
@ A target.ip.address 
www CNAME domain.com 

会被重定向www.domain.com到正确的网站,但WWW。仍然在该领域。我听说你可以这样做:

 
@ A target.ip.address 
www A internal.redirector.ip.address 

,但我不知道我的注册商的内部IP地址,可能处理这个重定向(或者即使这样的事情确实存在)。

我可以做些什么吗?

谢谢,你们摇滚。

-Josh

+0

不想使用永久性的URL重定向? 301 – Costa 2014-05-04 17:28:01

回答

17

不,你不能与DNS做到这一点 - 在DNS查询的结果不会改变在HTTP层发生了什么使原先输入的域名将永远是在发送到一个Host:标题中的Web服务器。

网页浏览器只在DNS中查找A记录,它是用户的ISP的递归名称服务器,它检测名称实际上只有一个CNAME记录,然后查找该记录,并返回与该名称对应的IP地址在CNAME记录中。

通常的C gethostbyname() API不会将任何CNAME信息返回给应用程序,它所获得的所有信息都是最终生成的IP地址。

达到你想要什么,你就需要安排www.example.com从您的博客有单独的主机,然后有一个网站做一个HTTP重定向到example.com(即没有0​​前缀)

1

我不知道你是否能DNS做到这一点,但我敢肯定,你可以在你的博客模板一些JavaScript弄虚作假执行它。即,每个页面加载的JavaScript片段可以检查当前页面的服务器,并且如果与“www”相匹配,则重写该位置。字首。当然,当页面加载并重新加载时会出现闪烁现象,搜索引擎也会忽略此重定向,因此您的内容可能会显示在搜索结果的错误地址中,但至少用户会看到正确的预期地址。

其他想法:如果您的DNS注册服务商另外提供免费的Web服务,请在那里进行重定向,添加重写规则以将请求路径转换为脚本参数,并为每个请求生成使用iframe访问真实内容的简单页面。这又需要一些PHP编码,但它不应该太难。

+0

好主意,但posterous.com是一个非常简单的引擎(漂亮,但是我遇到的这个问题只是一个小小的痛苦),并且没有可以更新的“模板”。我不得不在每篇文章中嵌入javascript,然后确保它不会在列出所有帖子的页面上重新运行。 – iopener 2009-02-27 07:40:07

+0

没有可编辑的模板?甚至不是你可以添加的标题的一小部分,例如统计相关的代码? Brrrr .... – 2009-02-27 08:01:52

+0

我知道。这是非常不干净的,但它会阻止我不断摆弄,而不是真正写作:)它们包含大量自动化内容,如自动交叉发布到twitter,flickr等,甚至整合Google Analytics。这是一个微小的肛门问题,相比所有的好处 – iopener 2009-02-27 08:20:50

3

我可以做些什么吗?

不,不适用于DNS。

您可以使用类似于dyndns.com的网络商店来设置某些内容。基本上你把www.posterous.com指向dyndns服务器,当浏览器连接时,他们发送一个HTTP 302重定向到你想要的url(posterous.com)。

http://www.dyndns.com/services/webredirect/

相关问题