Redirect 301在github托管的站点重定向?
这是我的Github存储库: 有一个Redirect 301在github托管的站点重定向?,redirect,github,hosting,jekyll,github-pages,Redirect,Github,Hosting,Jekyll,Github Pages,这是我的Github存储库: 有一个gh pages分支机构保存项目文档,基本上就是项目网站: 该分支将文档站点设置为-hurray 与此同时,我已经搜索了casperjs.org域以通过它获取此网站,因此我将CNAME文件放为:-在他们的示例中,该操作应该创建从www.example.com和charlie.github.com到example.com的重定向 虽然该网站现在指向,但没有301重定向(旧网站url)到新域名 如果可能的话,你知道如何设置这样的重定向吗?是虫子吗?如果是,我应该在
gh pages
分支机构保存项目文档,基本上就是项目网站:
该分支将文档站点设置为-hurray
与此同时,我已经搜索了casperjs.org
域以通过它获取此网站,因此我将CNAME
文件放为:-在他们的示例中,该操作应该创建从www.example.com和charlie.github.com到example.com的重定向
虽然该网站现在指向,但没有301重定向(旧网站url)到新域名
如果可能的话,你知道如何设置这样的重定向吗?是虫子吗?如果是,我应该在哪里打开问题?您可以在主机检测后使用Javascript重定向,如下所示:
if (window.location.href.indexOf('http://niko.github.com') === 0) {
window.location.href = 'http://casperjs.org{{ page.url }}';
}
<link rel="canonical" href="http://casperjs.org">
但我同意,这不是HTTP重定向。为了避免重复的内容,您可以在第一时间添加如下元规范:
if (window.location.href.indexOf('http://niko.github.com') === 0) {
window.location.href = 'http://casperjs.org{{ page.url }}';
}
<link rel="canonical" href="http://casperjs.org">
在切换github pages站点的域时,我遇到了类似的问题。我在Heroku上设置来处理301重定向到新域。它可以非常简单地处理域到域的重定向,但您可能需要修改它来处理站点的旧域+路径位置 我在这里详细描述了这些步骤: 你为什么不使用 那会给你
<meta http-equiv="refresh" content="0;URL='http://casperjs.org/'" />
让这个话题死而复生,提到GH现在支持redirect from的redirect to参数 只需将其添加到_config.yml中即可
gems:
- jekyll-redirect-from
这将显示在索引页的顶部
---
redirect_to: "http://example.com"
---
手动布局方法 如果您不想使用它,您可以自己轻松实现:
a.md
:
---
layout: 'redirect'
permalink: /a
redir_to: 'http://example.com'
sitemap: false
---
\u layouts/redirect.html
基于:
将重定向到example.com
与此示例类似,来自的重定向插件不会生成301s,只生成meta
+JavaScript重定向
我们可以验证以下情况:
curl localhost:4000/a
在GitHub pages v64上测试,现场演示位于:GitHub pages不支持类似.htaccess
或nginx/conf
所以最简单的方法是:
HTML重定向:
index.html
<html>
<head>
<meta http-equiv="refresh" content="0; url=http://www.mywebsite.com/" />
</head>
<body>
<p><a href="http://www.mywebsite.com/">Redirect</a></p>
</body>
</html>
+1。我也希望我的页面只能通过域名访问。可能的重复啊,我发誓我在问之前已经彻底搜索过了,对不起:$Edit:事实上不是同一个问题,一些有见地的评论已经发布在下面我想:)可能的重复问题是它不会解决问题“google复制内容”问题我现在遇到了…:/同时,你可以在你的页面上添加一个rel=“canonical”,这样谷歌就不会将这些页面声明为“重复”:事实上,这是github支持团队提供的官方答案:“像这样的重定向目前在页面上是不可能的。我们可能会在将来添加它。您可以使用一点javascript魔术为您执行重定向,这就是我们在help.github.com上所做的“并非没有问题。阅读更好的方法是使用HTML重定向而不是JS,但两者都不是永久性的。啊,是的,我确实忘记了这一点,谢谢你的提示:)但这并不能解决主要问题,即缺乏永久重定向,不幸的是:/很好的解决方案,但值得指出的是,这个gem创建了一个带有元刷新重定向的HTML页面,而不是http级别的重定向。最近修复了一个严重的默认布局错误:,正在等待它上行;-)这在我的GitHub页面URL(位于.GitHub.io
中)上给了我一个“404文件未找到”错误。除了@MaximillianLaumeister之外,这意味着它是http级别200,而不是301。这意味着你会失去你的网页搜索引擎优化的价值。只是提一下。。如果您使用的是gitlab
而不是github
,那么您使用的是plugins
而不是gems
@downvorters:请解释,这样我就可以学习和改进信息了。我从不报复。这是互联网上最有用、最直接的例子。非常感谢。HTML重定向不是永久性的,但感谢您的努力,我支持您。HTML重定向是一种很好的方法,谢谢你的回答,但它不是一种永久的方法。我还是投你一票。