是否有可能从Apache迁移到HAProxy / nginx作为反向代理?

时间:2011-11-20 19:27:29

标签: apache nginx haproxy

我们使用Apache作为反向代理(mod_proxy)。对我们来说最重要的功能是url映射(简单的url重写),包括重写cookie路径。我惊讶地发现,nginx不会重写cookie路径(使用工厂模块)。我不确定,但我相信HAProxy可以做到这一点。 Apache只对这项工作太重了。那么你可以评论在这种情况下使用什么吗? (后端是一个Java应用服务器,例如Tomcat)

  1. 继续使用Apache
  2. 将nginx与某些第三方模块(lua等)一起使用
  3. 使用HAProxy

2 个答案:

答案 0 :(得分:0)

我会调查HAProxy,除非您想要缓存该内容(服务器卸载)。它有令人印象深刻的cookie支持。

答案 1 :(得分:0)

根据我的经验,我发现HAProxy非常轻巧,易于使用。您可以使用reqrep/reqirep关键字定义URL / cookie重写,该关键字可应用于HTTP标头请求中的任何内容。例如:

# add cookie 'backend=2' for any HTTP method followed by
#  '/img' only or '/img/' followed by anything:

reqirep ^[^:\ ]*\ /img[/\ ].* \0\nCookie:\ backend=2

URL重写的相同想法:

# replace "/static/" with "/" at the beginning of any request path:

reqrep ^([^\ ]*)\ /static/(.*)     \1\ /\2