ruby-on-rails – 在RoR中重定向:使用redirect_to和head:move_permanently中的哪一个?

ruby-on-rails – 在RoR中重定向:使用redirect_to和head:move_permanently中的哪一个?,第1张

概述我们正在创建一个网站,该网站接收生成的传入链接,并将点击它的用户转发到另一个网站,同时在我们的数据库中保存 *** 作记录.我想这基本上就像AdSense这样的广告服务. 但是,重定向用户的最佳方法是什么? 我认为html-meta-tag-redirects是不可能的. 那么还有其他选择吗? head :moved_permanently, :location => "http://www.domain 我们正在创建一个网站,该网站接收生成的传入链接,并将点击它的用户转发到另一个网站,同时在我们的数据库中保存 *** 作记录.我想这基本上就像AdSense这样的广告服务.

但是,重定向用户的最佳方法是什么?

我认为HTML-Meta-tag-redirects是不可能的.

那么还有其他选择吗?

@R_403_6882@ :moved_permanently,:location => "http://www.domain.com/"

这个是301重定向.下一个是302:

redirect_to "http://www.domain.com"

还有其他人吗?哪个最适合我们的情况?链接是高度动态的,并且一直在变化.

我们希望确保我们不违反任何现有标准,当然我们不希望搜索引擎将我们标记为垃圾邮件发送者(我们不是,顺便说一下).

谢谢!

解决方法 从浏览器/最终用户的角度来看

redirect_to "http://www.domain.com"redirect_to "http://www.domain.com",:status => 302redirect_to "http://www.domain.com",:status => 301

相当于

@R_403_6882@ 301,:location => "http://www.domain.com/"@R_403_6882@ 302,:location => "http://www.domain.com/"

有一些小的技术差异可能导致一种选择而不是另一种选择.

redirect_to作为路由体系结构的一部分存在.您可以传递URL选项,该方法会根据应用程序路由规则自动创建最终位置.

redirect_to root_url,:status => 302redirect_to { :controller => "main",:action => "index" },:status => 302

相反,@R_403_6882@是用于处理响应头的低级API.它不关心您传递给响应的标头的含义.当您特别需要使用标头时,它很有用.我不会用它来设置重定向.

总结

以上是内存溢出为你收集整理的ruby-on-rails – 在RoR中重定向:使用redirect_to和head:move_permanently中的哪一个?全部内容,希望文章能够帮你解决ruby-on-rails – 在RoR中重定向:使用redirect_to和head:move_permanently中的哪一个?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1288191.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存