ruby-on-rails - 301 重定向只使用路由,没有 Controller

标签 ruby-on-rails ruby heroku http-status-code-301

我想进行 301 重定向,但我想要全部捕获。我目前拥有的是,域托管在 Wordpress 上,我有页面和帖子。如果这些页面或帖子在我的新 Rails 应用程序中不存在,我想重定向到主页。

我正在使用 Heroku 来托管它,所以据我所知,我不能使用 Web 服务器来完成它,所以我需要在 Rails 内部完成。我本身没有 Controller ,但我可以劫持页面的 Controller 并使用它。有没有一种方法可以在路由文件的底部放置一些内容,上面写着“如果此页面不存在,请将其重新路由到主页”?

最佳答案

docs 开始, 3.10 您可以使用高级约束和重定向,例如:

matches '*any_path' => redirect('/')

请务必在您的页面路由后添加此全局路由,因为此路由匹配所有路径。

关于ruby-on-rails - 301 重定向只使用路由,没有 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8276573/

相关文章:

ruby-on-rails - rails : How to listen to/pull from service or queue?

ruby-on-rails - Rails 应用程序在本地运行,在 Heroku 上崩溃

ruby-on-rails - "error(s) on assignment of multiparameter attributes"日期/时间字段

ruby-on-rails - 我如何在 Rails 中测试 belongs_to 和 has_many?

node.js - NextJS 在 '.next' 目录中找不到有效的构建

ruby-on-rails - Rails,如何知道请求是否来自本地主机?

java - 如何在 Jruby-rack 中配置自定义 servlet?

ruby-on-rails - 如何在 Heroku 上选择 Redis 附加组件

ruby-on-rails - Rails 返回 JSON 序列化属性 with_indifferent_access

node.js - Heroku 不使用定义的 PORT 环境变量