Skip to content

Commit 86bc655

Browse files
author
Marius Cramer
committed
- ported some patches
1 parent 72773a6 commit 86bc655

File tree

7 files changed

+109
-3
lines changed

7 files changed

+109
-3
lines changed

install/lib/installer_base.lib.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2514,7 +2514,11 @@ public function cleanup_ispconfig() {
25142514
if(is_file('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/db_firebird.inc.php');
25152515
if(is_file('/usr/local/ispconfig/interface/lib/classes/form.inc.php')) unlink('/usr/local/ispconfig/interface/lib/classes/form.inc.php');
25162516

2517-
2517+
// Change mode of a few files from amavisd
2518+
if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) chmod($conf['amavis']['config_dir'].'/conf.d/50-user', 0640);
2519+
if(is_file($conf['amavis']['config_dir'].'/50-user~')) chmod($conf['amavis']['config_dir'].'/50-user~', 0400);
2520+
if(is_file($conf['amavis']['config_dir'].'/amavisd.conf')) chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0640);
2521+
if(is_file($conf['amavis']['config_dir'].'/amavisd.conf~')) chmod($conf['amavis']['config_dir'].'/amavisd.conf~', 0400);
25182522

25192523
}
25202524

interface/lib/classes/tform_base.inc.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -710,7 +710,7 @@ protected function _encode($record, $tab, $dbencode = true, $api = false) {
710710
if($record[$key] != '' && $record[$key] != '0000-00-00') {
711711
if(function_exists('date_parse_from_format')) {
712712
$date_parts = date_parse_from_format($this->dateformat, $record[$key]);
713-
$new_record[$key] = $date_parts['year'].'-'.$date_parts['month'].'-'.$date_parts['day'];
713+
$new_record[$key] = $date_parts['year'].'-'.str_pad($date_parts['month'], 2, "0", STR_PAD_LEFT).'-'.str_pad($date_parts['day'], 2, "0", STR_PAD_LEFT);
714714
} else {
715715
$tmp = strtotime($record[$key]);
716716
$new_record[$key] = date('Y-m-d', $tmp);

interface/web/sites/form/web_vhost_domain.tform.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,15 @@
276276
'default' => 'n',
277277
'value' => array(0 => 'n', 1 => 'y')
278278
),
279+
'enable_pagespeed' => array (
280+
'datatype' => 'VARCHAR',
281+
'formtype' => 'CHECKBOX',
282+
'default' => 'n',
283+
'value' => array (
284+
0 => 'n',
285+
1 => 'y'
286+
)
287+
),
279288
'active' => array (
280289
'datatype' => 'VARCHAR',
281290
'formtype' => 'CHECKBOX',

interface/web/sites/templates/web_vhost_domain_edit.htm

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,12 @@ <h1><tmpl_var name="list_head_txt"></h1>
217217
</select></div>
218218
</div>
219219
{tmpl_var name="directive_snippets_id"}
220+
<div class="form-group nginx pagespeed">
221+
<label class="col-sm-3 control-label">{tmpl_var name='enable_pagespeed_txt'}</label>
222+
<div class="col-sm-9">
223+
{tmpl_var name="enable_pagespeed"}
224+
</div>
225+
</div>
220226
<div class="form-group">
221227
<label class="col-sm-3 control-label">{tmpl_var name='active_txt'}</label>
222228
<div class="col-sm-9">
@@ -276,6 +282,19 @@ <h1><tmpl_var name="list_head_txt"></h1>
276282
});
277283
// new Vhostsubdomains/Vhostaliasdomains
278284
if(serverId == '') jQuery('#parent_domain_id').trigger('change');
285+
286+
if(jQuery('#directive_snippets_id').val() > 0){
287+
jQuery('.pagespeed').show();
288+
} else {
289+
jQuery('.pagespeed').hide();
290+
}
291+
jQuery('#directive_snippets_id').change(function(){
292+
if(jQuery(this).val() > 0){
293+
jQuery('.pagespeed').show();
294+
} else {
295+
jQuery('.pagespeed').hide();
296+
}
297+
});
279298

280299
function reloadServerId(noFormChange) {
281300
var parentWebId = jQuery('#parent_domain_id').val();
@@ -291,6 +310,19 @@ <h1><tmpl_var name="list_head_txt"></h1>
291310
if(data.servertype == "nginx"){
292311
var selected = jQuery('#php').val();
293312
jQuery('.apache').hide();
313+
jQuery('.nginx').show();
314+
if(jQuery('#directive_snippets_id').val() > 0){
315+
jQuery('.pagespeed').show();
316+
} else {
317+
jQuery('.pagespeed').hide();
318+
}
319+
jQuery('#directive_snippets_id').change(function(){
320+
if(jQuery(this).val() > 0){
321+
jQuery('.pagespeed').show();
322+
} else {
323+
jQuery('.pagespeed').hide();
324+
}
325+
});
294326
if(selected != "no" && selected != "php-fpm" && selected != "hhvm") {
295327
jQuery('#php option[value="php-fpm"]').attr('selected', 'selected').val('php-fpm');
296328
}
@@ -299,6 +331,7 @@ <h1><tmpl_var name="list_head_txt"></h1>
299331
jQuery('#php option[value="mod"]').hide();
300332
jQuery('#php option[value="suphp"]').hide();
301333
} else {
334+
jQuery('.nginx').hide();
302335
jQuery('.apache').show();
303336
jQuery('#php option[value="fast-cgi"]').show();
304337
jQuery('#php option[value="cgi"]').show();

interface/web/sites/web_vhost_domain_edit.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1091,6 +1091,7 @@ function onSubmit() {
10911091
if($web_config['enable_spdy'] === 'n') {
10921092
unset($app->tform->formDef["tabs"]['ssl']['fields']['enable_spdy']);
10931093
}
1094+
if($this->dataRecord["directive_snippets_id"] < 1) $this->dataRecord["enable_pagespeed"] = 'n';
10941095

10951096
parent::onSubmit();
10961097
}

server/conf/nginx_vhost.conf.master

Lines changed: 49 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ server {
88
listen <tmpl_var name='ip_address'>:443 ssl{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if};
99
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
1010
<tmpl_if name='ipv6_enabled'>
11-
listen [<tmpl_var name='ipv6_address'>]:443 ssl{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if};;
11+
listen [<tmpl_var name='ipv6_address'>]:443 ssl{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if};
1212
</tmpl_if>
1313
ssl_certificate <tmpl_var name='document_root'>/ssl/<tmpl_var name='ssl_domain'>.crt;
1414
ssl_certificate_key <tmpl_var name='document_root'>/ssl/<tmpl_var name='ssl_domain'>.key;
@@ -192,6 +192,54 @@ server {
192192
<tmpl_var name='nginx_directive'>
193193
</tmpl_loop>
194194

195+
<tmpl_if name='enable_pagespeed' op='==' value='y'>
196+
pagespeed on;
197+
pagespeed FileCachePath /var/ngx_pagespeed_cache;
198+
<tmpl_if name='ssl_enabled'>pagespeed FetchHttps enable,allow_self_signed;</tmpl_if>
199+
200+
201+
# let's speed up PageSpeed by storing it in the super duper fast memcached
202+
pagespeed MemcachedThreads 1;
203+
pagespeed MemcachedServers "localhost:11211";
204+
205+
# Filter settings
206+
pagespeed RewriteLevel CoreFilters;
207+
pagespeed EnableFilters collapse_whitespace,remove_comments;
208+
209+
# Ensure requests for pagespeed optimized resources go to the pagespeed
210+
# handler and no extraneous headers get set.
211+
location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
212+
add_header "" "";
213+
access_log off;
214+
}
215+
location ~ "^/ngx_pagespeed_static/" {
216+
access_log off;
217+
}
218+
location ~ "^/ngx_pagespeed_beacon$" {
219+
access_log off;
220+
}
221+
location /ngx_pagespeed_statistics {
222+
allow 127.0.0.1;
223+
deny all;
224+
access_log off;
225+
}
226+
location /ngx_pagespeed_global_statistics {
227+
allow 127.0.0.1;
228+
deny all;
229+
access_log off;
230+
}
231+
location /ngx_pagespeed_message {
232+
allow 127.0.0.1;
233+
deny all;
234+
access_log off;
235+
}
236+
location /pagespeed_console {
237+
allow 127.0.0.1;
238+
deny all;
239+
access_log off;
240+
}
241+
</tmpl_if>
242+
195243
<tmpl_loop name="basic_auth_locations">
196244
location <tmpl_var name='htpasswd_location'> { ##merge##
197245
auth_basic "Members Only";

server/plugins-available/nginx_plugin.inc.php

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1097,8 +1097,19 @@ function update($event_name, $data) {
10971097
} else {
10981098
$nginx_directives = $data['new']['nginx_directives'];
10991099
}
1100+
if($data['new']['enable_pagespeed'] == 'y'){
1101+
// if PageSpeed is already enabled, don't add configuration again
1102+
if(stripos($nginx_directives, 'pagespeed') !== false){
1103+
$vhost_data['enable_pagespeed'] = false;
1104+
} else {
1105+
$vhost_data['enable_pagespeed'] = true;
1106+
}
1107+
} else {
1108+
$vhost_data['enable_pagespeed'] = false;
1109+
}
11001110
} else {
11011111
$nginx_directives = $data['new']['nginx_directives'];
1112+
$vhost_data['enable_pagespeed'] = false;
11021113
}
11031114
// Make sure we only have Unix linebreaks
11041115
$nginx_directives = str_replace("\r\n", "\n", $nginx_directives);

0 commit comments

Comments
 (0)