ftimme
2011-09-20 3c12a49bd4777caf5aace925ebea2cd2f883e00b
- Enabled custom nginx directives.
3 files modified
42 ■■■■ changed files
interface/web/sites/templates/web_domain_advanced.htm 2 ●●● patch | view | raw | blame | history
server/conf/nginx_vhost.conf.master 19 ●●●●● patch | view | raw | blame | history
server/plugins-available/nginx_plugin.inc.php 21 ●●●● patch | view | raw | blame | history
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>
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>
        
}
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");