我有一个用PHP编写的应用程序,现在新的应用程序是用Rails编写的。他们忘了处理书签和浏览器缓存的页面,所以我们仍然在/index.php上获得了大量的点击
我如何将其指向我的rails应用程序的根目录?
www.mydomain.com/index.php => www.mydomain.com
提前致谢
答案 0 :(得分:1)
如果错误代码为404,您需要捕获异常并重定向。
有关详细信息,请参阅此railscast: http://railscasts.com/episodes/53-handling-exceptions-revised?view=asciicast
基础知识如下。
将此添加到您的config/application.rb
以将异常路由到您的应用程序:
config.exceptions_app = self.routes
创建errors_controller
,然后将错误映射到routes.rb
文件中的show动作:
match ':status', to: 'errors#show', constraints: {status: /\d{3}/ }
errors_controller.rb
:
class ErrorsController < ApplicationController
def show
if request.path == '/404'
redirect_to root_path
else
render text: request.path
end
end
end
然后使用show模板为那些不是404错误的模板渲染一些明显的错误。
答案 1 :(得分:1)
将此信息放在config/routes.rb
:
matches '*any_path' => redirect('/')
这将匹配任何给定的网址并将其重定向到'/'
。但只要这个陈述在routes.rb
中是最后一个,它就不会用于文件中较高的路径。