From 183c476b5984c2d288e01b0c1eb8145d6b035d08 Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Mon, 10 Sep 2012 12:18:28 +0000
Subject: [PATCH] - Added check for the apps vhost to find out if the default
 PHP-FPM pool uses port 9000 or the socket /var/run/php5-fpm.sock.

---
 install/lib/installer_base.lib.php                 | 10 ++++++++++
 install/tpl/nginx_apps.vhost.master                |  6 ++++--
 server/conf/nginx_apps.vhost.master                |  6 ++++--
 server/plugins-available/apps_vhost_plugin.inc.php |  9 +++++++++
 4 files changed, 27 insertions(+), 4 deletions(-)

diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index d11acd1f63..ee45301cae 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -1555,6 +1555,16 @@ class installer_base {
 			//$content = str_replace('{fpm_port}', ($conf['nginx']['php_fpm_start_port']+1), $content);
 			$content = str_replace('{fpm_socket}', $fpm_socket, $content);
 			$content = str_replace('{cgi_socket}', $cgi_socket, $content);
+			
+			if(file_exists('/var/run/php5-fpm.sock')){
+				$use_tcp = '#';
+				$use_socket = '';
+			} else {
+				$use_tcp = '';
+				$use_socket = '#';
+			}
+			$content = str_replace('{use_tcp}', $use_tcp, $content);
+			$content = str_replace('{use_socket}', $use_socket, $content);
 
 			wf($vhost_conf_dir.'/apps.vhost', $content);
 
diff --git a/install/tpl/nginx_apps.vhost.master b/install/tpl/nginx_apps.vhost.master
index 560f6b587e..e092a12445 100644
--- a/install/tpl/nginx_apps.vhost.master
+++ b/install/tpl/nginx_apps.vhost.master
@@ -41,7 +41,8 @@ server {
                        root /usr/share/;
                        include /etc/nginx/fastcgi_params;
                        # To access phpMyAdmin, the default user (like www-data on Debian/Ubuntu) must be used
-                       fastcgi_pass 127.0.0.1:9000;
+                       {use_tcp}fastcgi_pass 127.0.0.1:9000;
+                       {use_socket}fastcgi_pass unix:/var/run/php5-fpm.sock;
                        fastcgi_index index.php;
                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        fastcgi_buffer_size 128k;
@@ -66,7 +67,8 @@ server {
                        root /usr/share/;
                        include /etc/nginx/fastcgi_params;
                        # To access SquirrelMail, the default user (like www-data on Debian/Ubuntu) must be used
-                       fastcgi_pass 127.0.0.1:9000;
+                       {use_tcp}fastcgi_pass 127.0.0.1:9000;
+                       {use_socket}fastcgi_pass unix:/var/run/php5-fpm.sock;
                        fastcgi_index index.php;
                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        fastcgi_buffer_size 128k;
diff --git a/server/conf/nginx_apps.vhost.master b/server/conf/nginx_apps.vhost.master
index 560f6b587e..e092a12445 100644
--- a/server/conf/nginx_apps.vhost.master
+++ b/server/conf/nginx_apps.vhost.master
@@ -41,7 +41,8 @@ server {
                        root /usr/share/;
                        include /etc/nginx/fastcgi_params;
                        # To access phpMyAdmin, the default user (like www-data on Debian/Ubuntu) must be used
-                       fastcgi_pass 127.0.0.1:9000;
+                       {use_tcp}fastcgi_pass 127.0.0.1:9000;
+                       {use_socket}fastcgi_pass unix:/var/run/php5-fpm.sock;
                        fastcgi_index index.php;
                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        fastcgi_buffer_size 128k;
@@ -66,7 +67,8 @@ server {
                        root /usr/share/;
                        include /etc/nginx/fastcgi_params;
                        # To access SquirrelMail, the default user (like www-data on Debian/Ubuntu) must be used
-                       fastcgi_pass 127.0.0.1:9000;
+                       {use_tcp}fastcgi_pass 127.0.0.1:9000;
+                       {use_socket}fastcgi_pass unix:/var/run/php5-fpm.sock;
                        fastcgi_index index.php;
                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        fastcgi_buffer_size 128k;
diff --git a/server/plugins-available/apps_vhost_plugin.inc.php b/server/plugins-available/apps_vhost_plugin.inc.php
index 1767ccd93f..f954e45e6e 100644
--- a/server/plugins-available/apps_vhost_plugin.inc.php
+++ b/server/plugins-available/apps_vhost_plugin.inc.php
@@ -141,6 +141,15 @@ class apps_vhost_plugin {
 			//$content = str_replace('{fpm_port}', $web_config['php_fpm_start_port']+1, $content);
 			$content = str_replace('{fpm_socket}', $fpm_socket, $content);
 			$content = str_replace('{cgi_socket}', $cgi_socket, $content);
+			if(file_exists('/var/run/php5-fpm.sock')){
+				$use_tcp = '#';
+				$use_socket = '';
+			} else {
+				$use_tcp = '';
+				$use_socket = '#';
+			}
+			$content = str_replace('{use_tcp}', $use_tcp, $content);
+			$content = str_replace('{use_socket}', $use_socket, $content);
 			
 			// PHP-FPM
 			// Dont just copy over the php-fpm pool template but add some custom settings
-- 
GitLab