我在 Heroku 应用程序中添加了一个自定义域,它工作正常,但应用程序仍然响应 {mysubdomain}.herokuapp.com。
为了防止重复内容,我想停止让我的应用程序响应子域。Heroku 中是否有一些设置可以为我执行此操作,或者我是否需要编写 301 重定向代码?
我在 Heroku 应用程序中添加了一个自定义域,它工作正常,但应用程序仍然响应 {mysubdomain}.herokuapp.com。
为了防止重复内容,我想停止让我的应用程序响应子域。Heroku 中是否有一些设置可以为我执行此操作,或者我是否需要编写 301 重定向代码?
您将需要 301 重定向。Heroku 将始终响应.herokuapp.com
您的应用程序的域
另一种选择是使用 rel="canonical" 链接标签。这告诉搜索引擎使用哪个 URL 来处理可能出现在多个 URL 上的内容:
<link rel="canonical" href="http://www.example.com/correct_url">
以下是谷歌必须说的:http: //support.google.com/webmasters/bin/answer.py ?hl=en&answer=139394
(底部明确提到了您的用例。)
我创建了hide_heroku gem 来处理这个问题——它使用 X-Robots-Tag HTTP 标头来防止搜索引擎索引*.herokuapp.com下的任何内容
我不相信可以通过他们的 Web 界面或命令行客户端删除 Heroku 提供的域名。如果您对此感到担忧,请将其重定向或添加robots.txt
到您的站点,该站点在通过以下方式访问时会阻塞.herokuapp.com
(我不知道该怎么做,抱歉)。
我怀疑谷歌在索引 Heroku 网站和处理双域问题本身方面相当聪明,但这只是一个猜测。