From 9b021b2e4b3ee783ceae6f1cf04e1b06ed431637 Mon Sep 17 00:00:00 2001
From: Till Brehm <tbrehm@ispconfig.org>
Date: Wed, 24 Sep 2014 09:46:48 -0400
Subject: [PATCH] Added support for php-fpm with mod_proxy_fcgi (required for apache 2.4). Note: The mod_proxy_fcgi that ships with CentOS and Ubuntu does not support sockets yet, so all php-fpm connections are done by IP.

---
 server/conf/vhost.conf.master                   |    3 +++
 server/plugins-available/apache2_plugin.inc.php |    5 +++--
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master
index 96b3443..16e0d12 100644
--- a/server/conf/vhost.conf.master
+++ b/server/conf/vhost.conf.master
@@ -334,6 +334,9 @@
                 FastCgiExternalServer {tmpl_var name='document_root'}/cgi-bin/php5-fcgi-{tmpl_var name='ip_address'}-{tmpl_var name='port'}-{tmpl_var name='domain'} -idle-timeout 300 -socket <tmpl_var name='fpm_socket'> -pass-header Authorization
 </tmpl_if>
 		</IfModule>
+		<IfModule mod_proxy_fcgi.c>
+			ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ fcgi://127.0.0.1:<tmpl_var name='fpm_port'><tmpl_var name='web_document_root'>/$1
+		</IfModule>
 </tmpl_if>
 
 <tmpl_if name="rewrite_enabled">
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index 142a916..3c4ba3e 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -1262,8 +1262,9 @@
 		$pool_name = 'web'.$data['new']['domain_id'];
 		$socket_dir = escapeshellcmd($web_config['php_fpm_socket_dir']);
 		if(substr($socket_dir, -1) != '/') $socket_dir .= '/';
-
-		if($data['new']['php_fpm_use_socket'] == 'y'){
+		
+		// User sockets, but not with apache 2.4 as socket support is buggy in that version
+		if($data['new']['php_fpm_use_socket'] == 'y' && $app->system->getapacheversion() < 2.4){
 			$use_tcp = 0;
 			$use_socket = 1;
 		} else {

--
Gitblit v1.9.1