[warn] proxy: No protocol handler was valid for the URL /proxy.do. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.

今天遇到了一个莫名其妙的错误。
把这个 /proxy.do url 通过rewrite module 代理到另一个url。
但是总是出现 500 internal server error。
查看rewrite log 也没什么问题。
最后在apache的error log 发现了 如下错误。

[warn] proxy: No protocol handler was valid for the URL /proxy.do. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.

这才想起来检查导入的模块。
最后确认发现是少了proxy_http_module,所以导致无法解析Protocol。

最终有关proxy的配置如下。

LoadModule proxy_module       modules/mod_proxy.so //proxy的模块
LoadModule proxy_ajp_module   modules/mod_proxy_ajp.so //通过proxy转发到tomcat时启用。
LoadModule proxy_balancer_module   modules/mod_proxy_balancer.so //通过代理做负载均衡时启用
LoadModule proxy_http_module modules/mod_proxy_http.so //通过rewrite module 代理时启用

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>