From 3c12a49bd4777caf5aace925ebea2cd2f883e00b Mon Sep 17 00:00:00 2001 From: ftimme <ft@falkotimme.com> Date: Tue, 20 Sep 2011 10:08:18 -0400 Subject: [PATCH] - Enabled custom nginx directives. --- interface/web/sites/templates/web_domain_advanced.htm | 2 +- server/conf/nginx_vhost.conf.master | 19 ++++++------------- server/plugins-available/nginx_plugin.inc.php | 21 +++++++++++++++------ 3 files changed, 22 insertions(+), 20 deletions(-) diff --git a/interface/web/sites/templates/web_domain_advanced.htm b/interface/web/sites/templates/web_domain_advanced.htm index 7fb4ac3..92a77c0 100644 --- a/interface/web/sites/templates/web_domain_advanced.htm +++ b/interface/web/sites/templates/web_domain_advanced.htm @@ -32,7 +32,7 @@ <label for="apache_directives">{tmpl_var name='apache_directives_txt'}</label> <textarea name="apache_directives" id="apache_directives" rows='10' cols='50' style="width:400px;">{tmpl_var name='apache_directives'}</textarea> </div> - <div class="ctrlHolder apache"> + <div class="ctrlHolder nginx"> <label for="nginx_directives">{tmpl_var name='nginx_directives_txt'}</label> <textarea name="nginx_directives" id="nginx_directives" rows='10' cols='50' style="width:400px;">{tmpl_var name='nginx_directives'}</textarea> </div> diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master index cc489fc..0f43481 100644 --- a/server/conf/nginx_vhost.conf.master +++ b/server/conf/nginx_vhost.conf.master @@ -24,10 +24,8 @@ rewrite ^/(.+)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'>; } </tmpl_loop> - - location / { - index index.html index.php; - } + + index index.html index.htm index.php index.cgi index.pl index.xhtml; <tmpl_if name='ssi' op='==' value='y'> @@ -49,11 +47,6 @@ error_log /var/log/ispconfig/httpd/<tmpl_var name='domain'>/error.log; - # serve static files directly - location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt)$ { - access_log off; - } - ## Disable .htaccess and other hidden files location ~ /\. { deny all; @@ -61,7 +54,7 @@ log_not_found off; } - location /favicon.ico { + location = /favicon.ico { log_not_found off; access_log off; } @@ -108,8 +101,8 @@ } </tmpl_if> - <tmpl_if name='nginx_directives'> - <tmpl_var name='nginx_directives'> - </tmpl_if> + <tmpl_loop name="nginx_directives"> + <tmpl_var name='nginx_directive'> + </tmpl_loop> } \ 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 d57469c..f47e179 100644 --- a/server/plugins-available/nginx_plugin.inc.php +++ b/server/plugins-available/nginx_plugin.inc.php @@ -639,9 +639,21 @@ $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']; - //$vhost_data['has_custom_php_ini'] = $has_custom_php_ini; - //$vhost_data['custom_php_ini_dir'] = escapeshellcmd($custom_php_ini_dir); $vhost_data['fpm_port'] = $web_config['php_fpm_start_port'] + $data['new']['domain_id'] + 1; + + // Custom nginx directives + $final_nginx_directives = array(); + $nginx_directives = $data['new']['nginx_directives']; + // Make sure we only have Unix linebreaks + $nginx_directives = str_replace("\r\n", "\n", $nginx_directives); + $nginx_directives = str_replace("\r", "\n", $nginx_directives); + $nginx_directive_lines = explode("\n", $nginx_directives); + if(is_array($nginx_directive_lines) && !empty($nginx_directive_lines)){ + foreach($nginx_directive_lines as $nginx_directive_line){ + $final_nginx_directives[] = array('nginx_directive' => $nginx_directive_line); + } + } + $tpl->setLoop('nginx_directives', $final_nginx_directives); // Check if a SSL cert exists $ssl_dir = $data['new']['document_root'].'/ssl'; @@ -781,11 +793,8 @@ } if(count($rewrite_rules) > 0) { - $tpl->setVar('rewrite_enabled',1); - } else { - $tpl->setVar('rewrite_enabled',0); + $tpl->setLoop('redirects',$rewrite_rules); } - $tpl->setLoop('redirects',$rewrite_rules); //* Create basic http auth for website statistics $tpl->setVar('stats_auth_passwd_file', $data['new']['document_root']."/.htpasswd_stats"); -- Gitblit v1.9.1