From 8e2c2e1c5d06ff636f4ec8695967230ef41212af Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Fri, 23 Sep 2011 08:20:32 -0400
Subject: [PATCH] - Added IPv6 support for nginx.
---
server/conf/nginx_vhost.conf.master | 56 ++++++++++++++-------------
server/plugins-available/nginx_plugin.inc.php | 20 +++++----
server/conf/php_fpm_pool.conf.master | 18 +++++----
3 files changed, 50 insertions(+), 44 deletions(-)
diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master
index a178e0e..ee9a537 100644
--- a/server/conf/nginx_vhost.conf.master
+++ b/server/conf/nginx_vhost.conf.master
@@ -1,41 +1,43 @@
server {
listen <tmpl_var name='ip_address'>:80;
- <tmpl_if name='ssl_enabled'>
+<tmpl_if name='ipv6_enabled'>
+ listen [<tmpl_var name='ipv6_address'>]:80;
+</tmpl_if>
+<tmpl_if name='ssl_enabled'>
listen <tmpl_var name='ip_address'>:443 ssl;
+<tmpl_if name='ipv6_enabled'>
+ listen [<tmpl_var name='ipv6_address'>]:443 ssl;
+</tmpl_if>
ssl_certificate <tmpl_var name='document_root'>/ssl/<tmpl_var name='ssl_domain'>.crt;
ssl_certificate_key <tmpl_var name='document_root'>/ssl/<tmpl_var name='ssl_domain'>.key;
- </tmpl_if>
+</tmpl_if>
server_name <tmpl_var name='domain'> <tmpl_var name='alias'>;
root <tmpl_var name='web_document_root_www'>;
- <tmpl_if name='seo_redirect_enabled'>
-
+<tmpl_if name='seo_redirect_enabled'>
if ($http_host = "<tmpl_var name='seo_redirect_origin_domain'>") {
rewrite ^ $scheme://<tmpl_var name='seo_redirect_target_domain'>$request_uri permanent;
}
- </tmpl_if>
+</tmpl_if>
- <tmpl_loop name="redirects">
-
+<tmpl_loop name="redirects">
if ($http_host ~* "<tmpl_var name='rewrite_domain'>$") {
rewrite ^/(.+)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'>;
}
- </tmpl_loop>
+</tmpl_loop>
index index.html index.htm index.php index.cgi index.pl index.xhtml;
- <tmpl_if name='ssi' op='==' value='y'>
-
+<tmpl_if name='ssi' op='==' value='y'>
location ~ \.shtml$ {
ssi on;
}
- </tmpl_if>
+</tmpl_if>
- <tmpl_if name='errordocs'>
-
+<tmpl_if name='errordocs'>
error_page 400 /error/400.html;
error_page 401 /error/401.html;
error_page 403 /error/403.html;
@@ -43,7 +45,7 @@
error_page 405 /error/405.html;
error_page 500 /error/500.html;
error_page 503 /error/503.html;
- </tmpl_if>
+</tmpl_if>
error_log /var/log/ispconfig/httpd/<tmpl_var name='domain'>/error.log;
access_log /var/log/ispconfig/httpd/<tmpl_var name='domain'>/access.log combined;
@@ -72,26 +74,27 @@
auth_basic_user_file <tmpl_var name='stats_auth_passwd_file'>;
}
- <tmpl_if name='php' op='==' value='fast-cgi'>
-
+<tmpl_if name='php' op='==' value='fast-cgi'>
location ~ \.php$ {
try_files $uri =404;
- <tmpl_var name='use_tcp'>fastcgi_pass 127.0.0.1:<tmpl_var name='fpm_port'>;
- <tmpl_var name='use_socket'>fastcgi_pass unix:<tmpl_var name='fpm_socket'>;
+<tmpl_if name='use_tcp'>
+ fastcgi_pass 127.0.0.1:<tmpl_var name='fpm_port'>;
+</tmpl_if>
+<tmpl_if name='use_socket'>
+ fastcgi_pass unix:<tmpl_var name='fpm_socket'>;
+</tmpl_if>
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
- </tmpl_else>
-
+</tmpl_else>
location ~ \.php$ {
deny all;
}
- </tmpl_if>
+</tmpl_if>
- <tmpl_if name='cgi' op='==' value='y'>
-
+<tmpl_if name='cgi' op='==' value='y'>
location /cgi-bin/ {
try_files $uri =404;
root <tmpl_var name='document_root'>;
@@ -101,10 +104,9 @@
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
- </tmpl_if>
+</tmpl_if>
- <tmpl_loop name="nginx_directives">
+<tmpl_loop name="nginx_directives">
<tmpl_var name='nginx_directive'>
- </tmpl_loop>
-
+</tmpl_loop>
}
\ No newline at end of file
diff --git a/server/conf/php_fpm_pool.conf.master b/server/conf/php_fpm_pool.conf.master
index 1131d71..0bde26b 100644
--- a/server/conf/php_fpm_pool.conf.master
+++ b/server/conf/php_fpm_pool.conf.master
@@ -1,12 +1,15 @@
[<tmpl_var name='fpm_pool'>]
-<tmpl_var name='use_tcp'>listen = 127.0.0.1:<tmpl_var name='fpm_port'>
-<tmpl_var name='use_tcp'>listen.allowed_clients = 127.0.0.1
-
-<tmpl_var name='use_socket'>listen = <tmpl_var name='fpm_socket'>
-<tmpl_var name='use_socket'>listen.owner = <tmpl_var name='fpm_user'>
-<tmpl_var name='use_socket'>listen.group = <tmpl_var name='fpm_group'>
-<tmpl_var name='use_socket'>listen.mode = 0660
+<tmpl_if name='use_tcp'>
+listen = 127.0.0.1:<tmpl_var name='fpm_port'>
+listen.allowed_clients = 127.0.0.1
+</tmpl_if>
+<tmpl_if name='use_socket'>
+listen = <tmpl_var name='fpm_socket'>
+listen.owner = <tmpl_var name='fpm_user'>
+listen.group = <tmpl_var name='fpm_group'>
+listen.mode = 0660
+</tmpl_if>
user = <tmpl_var name='fpm_user'>
group = <tmpl_var name='fpm_group'>
@@ -20,7 +23,6 @@
chdir = /
<tmpl_if name='security_level' op='==' value='20'>
-
<tmpl_var name='enable_php_open_basedir'>php_admin_value[open_basedir] = <tmpl_var name='php_open_basedir'>
</tmpl_if>
diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index 92ca082..9a05891 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -638,7 +638,9 @@
$vhost_data['web_document_root'] = $data['new']['document_root'].'/web';
$vhost_data['web_document_root_www'] = $web_config['website_basedir'].'/'.$data['new']['domain'].'/web';
$vhost_data['web_basedir'] = $web_config['website_basedir'];
- $vhost_data['ssl_domain'] = $data['new']['ssl_domain'];
+
+ // IPv6
+ if($data['new']['ipv6_address'] != '') $tpl->setVar('ipv6_enabled', 1);
// PHP-FPM
$pool_dir = escapeshellcmd($web_config['php_fpm_pool_dir']);
@@ -648,11 +650,11 @@
if(substr($socket_dir,-1) != '/') $socket_dir .= '/';
if($data['new']['php_fpm_use_socket'] == 'y'){
- $use_tcp = '#';
- $use_socket = '';
+ $use_tcp = 0;
+ $use_socket = 1;
} else {
- $use_tcp = '';
- $use_socket = '#';
+ $use_tcp = 1;
+ $use_socket = 0;
}
$tpl->setVar('use_tcp', $use_tcp);
$tpl->setVar('use_socket', $use_socket);
@@ -1113,12 +1115,12 @@
$tpl->newTemplate('php_fpm_pool.conf.master');
if($data['new']['php_fpm_use_socket'] == 'y'){
- $use_tcp = ';';
- $use_socket = '';
+ $use_tcp = 0;
+ $use_socket = 1;
if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir);
} else {
- $use_tcp = '';
- $use_socket = ';';
+ $use_tcp = 1;
+ $use_socket = 0;
}
$tpl->setVar('use_tcp', $use_tcp);
$tpl->setVar('use_socket', $use_socket);
--
Gitblit v1.9.1