如何将访问者重定向到 Middleman 中的另一个站点?
How to redirect the visitors to another site in Middleman?
在 PHP 中重定向到另一个站点 非常 容易。如果他们想将访问者从 "www.yoursite.com/news" 重定向到 "www.bbc.com"...我所要做的就是制作 "news" 文件夹并在其中创建一个 index.php 文件并添加此行:
<?php
header("Location: http://www.bbc.com/");
?>
我完成了!但是我最近开始从事一个用 Ruby 编写的项目,并且很难弄清楚如何完成这个简单的任务:<
这可能是一个非常愚蠢的问题,但我们将不胜感激任何帮助!!
更新:
所以发现这个项目是使用静态站点生成器Middleman来构建站点的,这就是为什么没有routes.rb
文件的原因。它只有 config.rb
。谁能帮我弄清楚如何在中间人中重定向?
第二次更新:
看起来因为 Middleman,这种重定向不可能那么简单。所以我问这个(非常愚蠢的)问题:
您需要在 routes.rb 中设置自定义路线:
get "/news" => redirect("http://bbc.com")
所以终于找到了解决我的问题的简单方法:)
为了将www.yoursite.com/news重定向到www.bbc.com,首先我创建了我的 source
文件夹下的一个 news.html.erb
文件(你有 index.html.erb
文件)。在该文件中,我添加了以下行和 wallaaahhhh!
<% content_for :body_content do %>
<script type="text/javascript">
// Javascript URL redirection
window.location.replace("http://www.bbc.com/");
</script>
<noscript>
// Using HTML refresh meta tag as a fail back in case the user has javascript disabled
<meta http-equiv="refresh" content="0;URL=http://www.bbc.com/">
</noscript>
<% end %>
我在这里要提的一件事是 most sites 建议
using window.location.href
, because replace()
does not put the originating page in the session history, meaning the user won’t get stuck in a never-ending back-button process.
但在我的情况下 window.location.href
没有成功:(
在 PHP 中重定向到另一个站点 非常 容易。如果他们想将访问者从 "www.yoursite.com/news" 重定向到 "www.bbc.com"...我所要做的就是制作 "news" 文件夹并在其中创建一个 index.php 文件并添加此行:
<?php
header("Location: http://www.bbc.com/");
?>
我完成了!但是我最近开始从事一个用 Ruby 编写的项目,并且很难弄清楚如何完成这个简单的任务:<
这可能是一个非常愚蠢的问题,但我们将不胜感激任何帮助!!
更新:
所以发现这个项目是使用静态站点生成器Middleman来构建站点的,这就是为什么没有routes.rb
文件的原因。它只有 config.rb
。谁能帮我弄清楚如何在中间人中重定向?
第二次更新:
看起来因为 Middleman,这种重定向不可能那么简单。所以我问这个(非常愚蠢的)问题:
您需要在 routes.rb 中设置自定义路线:
get "/news" => redirect("http://bbc.com")
所以终于找到了解决我的问题的简单方法:)
为了将www.yoursite.com/news重定向到www.bbc.com,首先我创建了我的 source
文件夹下的一个 news.html.erb
文件(你有 index.html.erb
文件)。在该文件中,我添加了以下行和 wallaaahhhh!
<% content_for :body_content do %>
<script type="text/javascript">
// Javascript URL redirection
window.location.replace("http://www.bbc.com/");
</script>
<noscript>
// Using HTML refresh meta tag as a fail back in case the user has javascript disabled
<meta http-equiv="refresh" content="0;URL=http://www.bbc.com/">
</noscript>
<% end %>
我在这里要提的一件事是 most sites 建议
using
window.location.href
, becausereplace()
does not put the originating page in the session history, meaning the user won’t get stuck in a never-ending back-button process.
但在我的情况下 window.location.href
没有成功:(