Appendix A. Mod_proxy connector modules The mod_proxy connector comprises a set of standard Apache HTTP Server modules. These modules enable the Apache HTTP Server to act as a proxy/gateway for sending web traffic between web clients and back-end servers over different types of protocols. This appendix describes the modules that the mod_proxy connector uses. A.1. Mod_proxy.so module The mod_proxy.so module is a standard Apache HTTP Server module that enables the server to act as a proxy for data transferred over the AJP (Apache JServe Protocol), FTP, CONNECT (for SSL), and HTTP protocols. The mod_proxy module does not require additional configuration. The identifier for the mod_proxy module is proxy_module . Additional resources Apache Module mod_proxy A.2. Mod_proxy_ajp.so module The mod_proxy_ajp.so module is a standard Apache HTTP Server module that provides support for Apache JServ Protocol (AJP) proxying. By using the mod_proxy_ajp module, the Apache HTTP Server acts as an intermediary for sending AJP requests and responses between web clients and back-end servers. AJP is a clear-text protocol that does not support data encryption. The mod_proxy module is also required if you want to use mod_proxy_ajp . The identifier for the mod_proxy_ajp module is proxy_ajp_module . Additionally, the secret property is required when using the Tomcat AJP Connector. You can add the secret property to the ProxyPass settings by using the following command: ProxyPass /example/ ajp://localhost:8009/example/ secret=YOUR_AJP_SECRET Note If you set a secret on a load balancer, all of its members inherit this secret . The mod_proxy_ajp module does not provide any configuration directives. Additional resources Apache Module mod_proxy_ajp A.3. Mod_proxy_http.so module The mod_proxy_http.so module is a standard Apache HTTP Server module that provides support for Hypertext Transfer Protocol (HTTP) and Hypertext Transfer Protocol Secure (HTTPS) proxying. By using the mod_proxy_http module, the Apache HTTP Server acts as an intermediary for forwarding HTTP or HTTPS requests between web clients and back-end servers. The mod_proxy_http module supports HTTP/1.1 and earlier versions of the HTTP protocol. The mod_proxy module is also required if you want to use mod_proxy_http . The identifier for the mod_proxy_http module is proxy_http_module . The mod_proxy_http module does not provide any configuration directives. Along with the configuration that controls the behavior of the mod_proxy module, the mod_proxy_http module uses a series of environment variables that control the behavior of the HTTP protocol provider. Additional resources Apache Module mod_proxy_http A.4. Mod_proxy_http2.so module The mod_proxy_http2.so module is a standard Apache HTTP Server module that provides support for Hypertext Transfer Protocol 2.0 (HTTP/2) proxying. By using the mod_proxy_http2 module, the Apache HTTP Server acts as an intermediary for forwarding HTTP/2 requests between web clients and back-end servers. The mod_proxy_http2 module supports client requests that use HTTP/1.1 or HTTP/2 as a communication protocol. However, the mod_proxy_http2 module requires that all communication between the Apache HTTP Server and the back-end server uses HTTP/2 only. For client requests that have the same back-end destination, the Apache HTTP Server reuses the same TCP connection whenever possible. However, even if you want to forward multiple client requests to the same back end, the Apache HTTP Server forwards a separate HTTP/2 proxy request for each HTTP/1.1 client request. The mod_proxy module is also required if you want to use mod_proxy_http2 . The identifier for the mod_proxy_http2 module is proxy_http2_module . The mod_proxy_http2 module does not provide any configuration directives. Note The mod_proxy_http2 module is an experimental Apache feature that requires use of the libnghttp2 library for the core HTTP/2 engine. Additional resources Enabling HTTP/2 for the JBCS Apache HTTP Server Apache Module mod_proxy_http2

Commands: