diff --git a/install/sql/incremental/upd_0080.sql b/install/sql/incremental/upd_0080.sql
new file mode 100644
index 0000000000000000000000000000000000000000..fcdcb622e32cb7cb4b5438e1107dd5c73d8fe3e2
--- /dev/null
+++ b/install/sql/incremental/upd_0080.sql
@@ -0,0 +1 @@
+ALTER TABLE `web_domain` ADD COLUMN `enable_spdy` ENUM('y','n') NULL DEFAULT 'n' AFTER `proxy_directives`;
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index 6af74fb984e63132a0a9b871b3171784d6e43889..b6390e71230ae42d7c78e3747022abcf7ccade10 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -1877,6 +1877,7 @@ CREATE TABLE `web_domain` (
`traffic_quota_lock` enum('n','y') NOT NULL default 'n',
`fastcgi_php_version` varchar(255) DEFAULT NULL,
`proxy_directives` mediumtext,
+ `enable_spdy` ENUM('y','n') NULL DEFAULT 'n',
`last_quota_notification` date NULL default NULL,
`rewrite_rules` mediumtext,
`added_date` date NOT NULL DEFAULT '0000-00-00',
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index c563650c75467728ca2fd17a84fc9ab491d4deb4..7805988a71d758a294c246daddbc4a119288b5a2 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -85,6 +85,7 @@ php_ini_path_apache=/etc/php5/apache2/php.ini
php_ini_path_cgi=/etc/php5/cgi/php.ini
check_apache_config=y
enable_sni=y
+enable_spdy=n
enable_ip_wildcard=y
overtraffic_notify_admin=y
overtraffic_notify_client=y
diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php
index debceae718a3af953598451fb71c550f3954eceb..209a0a4c5767d48b1be247ff137dc17940b140f2 100644
--- a/interface/web/admin/form/server_config.tform.php
+++ b/interface/web/admin/form/server_config.tform.php
@@ -1021,6 +1021,15 @@ $form["tabs"]['web'] = array(
'width' => '40',
'maxlength' => '255'
),
+ 'enable_spdy' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'y',
+ 'value' => array (
+ 0 => 'n',
+ 1 => 'y'
+ )
+ ),
'apps_vhost_port' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng
index 6a8e42187a1309e4fe9729eee32594aadf0848a9..fa9ee445e76f0ae9ac4d6e781ff30a708ba5768d 100644
--- a/interface/web/admin/lib/lang/de_server_config.lng
+++ b/interface/web/admin/lib/lang/de_server_config.lng
@@ -262,4 +262,5 @@ $wb['php_ini_check_minutes_txt'] = 'Prüfe php.ini alle X Minuten auf Änderunge
$wb['php_ini_check_minutes_error_empty'] = 'Bitte geben Sie einen Wert an, wie oft die php.ini auf Änderungen geprüft werden soll.';
$wb['php_ini_check_minutes_info_txt'] = '0 = keine Prüfung';
$wb['php_handler_txt'] = 'Standard-PHP-Handler';
+$wb['enable_spdy_txt'] = 'Stellt Spdy zur Verfügung';
?>
diff --git a/interface/web/admin/lib/lang/en_server_config.lng b/interface/web/admin/lib/lang/en_server_config.lng
index b6288341aaa44307077ac720ab29ab60c35fc9f6..1134e9f965e3c13a79e2fdb5581f493d9f51ee57 100644
--- a/interface/web/admin/lib/lang/en_server_config.lng
+++ b/interface/web/admin/lib/lang/en_server_config.lng
@@ -263,4 +263,5 @@ $wb['network_filesystem_txt'] = 'Network Filesystem';
$wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes';
$wb['php_ini_check_minutes_error_empty'] = 'Please specify a value how often php.ini should be checked for changes.';
$wb['php_ini_check_minutes_info_txt'] = '0 = no check';
+$wb['enable_spdy_txt'] = 'enables spdy';
?>
diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm
index 1ea52554a80d1089954ce5f7c958d679a05d652e..1ad90ba9bb06da91d7c9a79e7a0e2b99cfdf79a4 100644
--- a/interface/web/admin/templates/server_config_web_edit.htm
+++ b/interface/web/admin/templates/server_config_web_edit.htm
@@ -101,6 +101,14 @@
+
{tmpl_var name='enable_ip_wildcard_txt'}
diff --git a/interface/web/sites/form/web_vhost_domain.tform.php b/interface/web/sites/form/web_vhost_domain.tform.php
index 4d6b161db42aee7b7c110b1d0aaf6a14f5ac5551..c342605c9ae42da884e644e6cf89da8179007485 100644
--- a/interface/web/sites/form/web_vhost_domain.tform.php
+++ b/interface/web/sites/form/web_vhost_domain.tform.php
@@ -523,6 +523,15 @@ if($ssl_available) {
'default' => '',
'value' => array('' => 'none_txt', 'save' => 'save_certificate_txt', 'create' => 'create_certificate_txt', 'del' => 'delete_certificate_txt')
),
+ 'enable_spdy' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'n',
+ 'value' => array (
+ 0 => 'n',
+ 1 => 'y'
+ )
+ ),
//#################################
// ENDE Datatable fields
//#################################
diff --git a/interface/web/sites/lib/lang/de_web_vhost_domain.lng b/interface/web/sites/lib/lang/de_web_vhost_domain.lng
index 7cce816805d2f9af7f35c5d1af1c14ab4b3c9825..ddf32fbce7dc9a3ff489ee189f386136273a99ec 100644
--- a/interface/web/sites/lib/lang/de_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/de_web_vhost_domain.lng
@@ -136,4 +136,5 @@ $wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
$wb['apache_directive_blocked_error'] = 'Die Apache Direktive wurde durch die Sicherheitsrichtline blockiert:';
$wb['btn_save_txt'] = 'Speichern';
$wb['btn_cancel_txt'] = 'Abbrechen';
+$wb['enable_spdy_txt'] = 'Aktiviere Spdy';
?>
diff --git a/interface/web/sites/lib/lang/en_web_vhost_domain.lng b/interface/web/sites/lib/lang/en_web_vhost_domain.lng
index 1f6b45568dc7c60132d41fa465f402fe384a827f..65a2f628745a8e7c5c51873931ec92bcd9783900 100644
--- a/interface/web/sites/lib/lang/en_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/en_web_vhost_domain.lng
@@ -139,4 +139,5 @@ $wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid c
$wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
$wb['btn_save_txt'] = "Save";
$wb['btn_cancel_txt'] = "Cancel";
+$wb['enable_spdy_txt'] = 'activate Spdy';
?>
diff --git a/interface/web/sites/templates/web_vhost_domain_advanced.htm b/interface/web/sites/templates/web_vhost_domain_advanced.htm
index d2c3bb871caa7777281211ebc52bf6ac9a49a27a..8529819b6dc1efda67d014144cc610018d3ea193 100644
--- a/interface/web/sites/templates/web_vhost_domain_advanced.htm
+++ b/interface/web/sites/templates/web_vhost_domain_advanced.htm
@@ -176,4 +176,4 @@
});
}
-
\ No newline at end of file
+
diff --git a/interface/web/sites/templates/web_vhost_domain_ssl.htm b/interface/web/sites/templates/web_vhost_domain_ssl.htm
index 4869c19aa875e3117b28949e9c1802d915c54ac6..75bf9e68162eec0aa9c54cfa121add3cf271bdb0 100644
--- a/interface/web/sites/templates/web_vhost_domain_ssl.htm
+++ b/interface/web/sites/templates/web_vhost_domain_ssl.htm
@@ -64,6 +64,12 @@
{tmpl_var name='ssl_action'}
+
+
{tmpl_var name='enable_spdy_txt'}
+
+ {tmpl_var name="enable_spdy"}
+
+
@@ -74,4 +80,4 @@
-
\ No newline at end of file
+
diff --git a/server/conf/apache_apps.vhost.master b/server/conf/apache_apps.vhost.master
index bc6c6bcfb087906df401e6298a1eaca022c97599..7d6d66590aa1c593525bb0faeafc34ee88d56526 100644
--- a/server/conf/apache_apps.vhost.master
+++ b/server/conf/apache_apps.vhost.master
@@ -10,11 +10,17 @@
ServerAdmin webmaster@localhost
{tmpl_var name='apps_vhost_servername'}
-
+
SetHandler None
-
+
+ {tmpl_if name="enable_spdy" op="==" value="y"}
+
+ SpdyEnabled on
+
+ {/tmpl_if}
+
DocumentRoot {tmpl_var name='apps_vhost_dir'}
AddType application/x-httpd-php .php
diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master
index 222bf2989e3419568a602f7d1961749bbc09d59f..41e08c80055cf715a9b37e4fbeff42165c58030a 100644
--- a/server/conf/nginx_vhost.conf.master
+++ b/server/conf/nginx_vhost.conf.master
@@ -5,7 +5,7 @@ server {
- listen :443 ssl;
+ listen :443 ssl{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if};
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
listen []:443 ssl;
@@ -242,4 +242,4 @@ server {
}
}
-
\ No newline at end of file
+
diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index c256ae18f6b9b7e06623570fc6036e8da6536594..27c17f25a6adbee6e8469b313bc1afa455ff03f5 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -925,6 +925,12 @@ class nginx_plugin {
}
}
+ // Spdy
+ $tpl->setVar('spdy_enabled', '');
+ if($data['new']['enable_spdy'] == 'y') {
+ $tpl->setVar('spdy_enabled', ' spdy');
+ }
+
// PHP-FPM
// Support for multiple PHP versions
/*