导轨,根据用户的 IP 地址重写路由



我有一个搜索索引器,为应用程序中的特定页面编制索引。我们为索引构建的url是应用程序中其他页面中提供的内容的聚合。索引器应该看到聚合页面,用户应该看到找到的主题的第一个页面/仪表板。

我想看看如何(通过routes.rb或before_filter)将除搜索索引器之外的所有人路由到主题的面板。

例如。聚合页面在这里/topics/123我的主题/searchindex。索引器将该页面作为相关内容返回,因为它具有主题123的所有内容。当用户(不是搜索索引器ip)转到/topics/123 my topic/searchindex时,他们应该被路由到/topics/23 my topic。

从本质上讲,除了已知的IP地址之外,对每个人来说,删除/搜索索引的最佳方法是什么?

这可能可以通过apache中的.htaccess来实现,但我更愿意将其保留在我的应用程序中,这样,如果索引器ip地址发生更改,我就不必修改服务器上的文件。

谢谢

马特

before_filter :redirect_users
def searchindex
# :id => '123-my-topic'
redirect_users
# Handle searchindex traffic for the indexer
end
def redirect_users
unless ip == '127.0.0.1'
redirect_to :action => :show, :id => :topic_id
end
end

最新更新