从我的应用程序的先前版本中,我有许多针对旧URL的重写规则。
我看到三个选择:

  • 只需在路由文件(config/routes.rb)中添加“匹配”行
  • 使用rack-rewrite
  • 创建Nginx/Apache重写规则(在我的情况下为Nginx)

  • 我想3的性能要比2的性能好,而2的性能要比1更好。

    我的问题:
  • 是吗?
  • 如果是这样,有什么关系?
  • 还有我可能没有考虑过的其他折衷方案吗?
  • 除了这三个以外,还有其他选择吗?
  • 最佳答案

  • 是的,您的性能顺序正确。
  • 取决于您的站点,流量,这些重写规则的命中数-性能很可能远小于可维护性。
  • 可维护性-使用您所知道的以及开发人员所知道的。 Apache的重写语法很容易出错,并且往往相当Write-Once-Read-Never。 Nginx的挺不错的,但仍然是您和开发人员学习的新DSL。 rack-rewrite与Apache相反,实际上很难犯错,因为它是如此简单(我认为它比routes.rb更简单)
  • 不值得评估。
  • 关于ruby-on-rails - Routes.rb vs机架重写vs nginx/apache重写规则,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5756965/

    10-11 19:24
    查看更多