Bug 1136290 - SetHandler to proxy support
Summary: SetHandler to proxy support
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: httpd
Version: 7.1
Hardware: Unspecified
OS: Unspecified
Target Milestone: rc
: ---
Assignee: Luboš Uhliarik
QA Contact: Martin Frodl
Depends On:
Blocks: 1136906
TreeView+ depends on / blocked
Reported: 2014-09-02 09:40 UTC by Remi Collet
Modified: 2021-01-14 09:32 UTC (History)
7 users (show)

Fixed In Version: httpd-2.4.6-24.el7
Doc Type: Enhancement
Doc Text:
Feature: Add support for using SetHandler together with mod_proxy. Reason: There was no way to use SetHandler with mod_proxy to configure it to use proxy for the incoming requests. This is useful for using for example php-fpm with event or worker MPM. Result: SetHandler directive has been improved to allow setting proxy as a handler in, for example, following format: SetHandler "proxy:fcgi://".
Clone Of:
: 1136906 (view as bug list)
Last Closed: 2015-03-05 07:13:10 UTC
Target Upstream Version:

Attachments (Terms of Use)

System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2015:0325 0 normal SHIPPED_LIVE Low: httpd security, bug fix, and enhancement update 2015-03-05 11:59:16 UTC

Description Remi Collet 2014-09-02 09:40:52 UTC
The simple and common way to enable PHP support in Apache http server is using mod_php and

    SetHandler application/x-httpd-php

Using httpd with worker or event MPM doesn't have support for mod_php
With RHSCL various PHP versions are available, but only one mod_php can be enabled.

The solution is to use php-fpm and mod_proxy_fcgi.

But configuration, to redirect PHP script to FPM, requires to use ProxyPass(Match) which is really not simple.

As ProxyPass is evaluated in the very beginning of an http request, it don't honours alias or htaccess rules.

SetHandler is evaluated at the very end of an http request.

httpd 2.4.10 have SetHandler to proxy support which allow to use 

    SetHandler "proxy:fcgi://"

Please consider backporting this great feature in RHEL

For memory, commit in fedora (at 2.4.9 time)

Comment 6 Orsiris de Jong 2014-12-11 22:03:40 UTC
Using php-fpm with actual httpd 2.4.6 package needs use of ProxyPassMatch directive which can lead to malicious code execution.

Using the following directive:
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://

Malicious code injection:
/uploads/malicious.jpg/lalalaalala.php will lead php-fpm to execute malicious.jpg (source https://wiki.apache.org/httpd/PHP-FPM )

Might the SetHanlder enhancement be considered as a security enhancement and therefore backported ?


Comment 8 errata-xmlrpc 2015-03-05 07:13:10 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.