# <%= servername %> <%- unless ssl_mode.to_s == 'only' then -%> Include include.d/defaults.inc ServerName <%= servername %> <%- unless serveralias.to_s.empty? then -%> ServerAlias <%= serveralias %> <%- end -%> <%- unless server_admin.to_s.empty? or server_admin.to_s == 'absent' then -%> ServerAdmin <%= server_admin %> <%- end -%> DocumentRoot <%= documentroot %>/ <%- case logmode.to_s when 'nologs' -%> ErrorLog /dev/null CustomLog /dev/null <%- when 'semianonym' -%> ErrorLog <%= logdir %>/error_log CustomLog <%= logdir %>/access_log noip <%- when 'anonym' -%> ErrorLog /dev/null CustomLog <%= logdir %>/access_log noip <%- else -%> ErrorLog <%= logdir %>/error_log CustomLog <%= logdir %>/access_log combined <%- end -%> <%- if default_charset.to_s != 'absent' then -%> AddDefaultCharset <%= default_charset %> <%- end -%> <%- if ssl_mode.to_s == 'force' then -%> RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule (.*) https://%{SERVER_NAME}$1 [R=permanent,L] <%- end -%> SetEnv GITWEB_CONFIG <%= gitweb_config %> DirectoryIndex gitweb.cgi <%- if not ssl_mode.to_s == 'force' then -%> /"> <%- if options.to_s != 'absent' or do_includes.to_s == 'true' then -%> Options <%- unless options.to_s == 'absent' then -%><%= options %><%- end -%><%- if do_includes.to_s == 'true' and not options.include?('+Includes') then -%> +Includes<%- end -%><%- unless options.include?('+ExecCGI') then -%> +ExecCGI<%- end -%> <%- end -%> AddHandler cgi-script .cgi Options ExecCGI FollowSymLinks SetHandler cgi-script RewriteEngine on RewriteRule ^[a-zA-Z0-9_-]+.git/?(\?.)?$ /gitweb.cgi%{REQUESTURI} [L,PT] <%- unless htpasswd_file.to_s == 'absent' then -%> AuthType Basic AuthName "Access fuer <%= servername %>" AuthUserFile <%= real_htpasswd_path %> require valid-user <%- end -%> <%- end -%> <%- if mod_security.to_s == 'true' then -%> SecRuleEngine On <%- if mod_security_relevantonly.to_s == 'true' then -%> SecAuditEngine RelevantOnly <%- else -%> SecAuditEngine On <%- end -%> <%- else -%> SecRuleEngine Off SecAuditEngine Off <%- end -%> SecAuditLogType Concurrent SecAuditLogStorageDir <%= logdir %>/ SecAuditLog <%= logdir %>/mod_security_audit.log SecDebugLog <%= logdir %>/mod_security_debug.log <%- unless additional_options.to_s == 'absent' then -%> <%= additional_options %> <%- end -%> <%- end -%> <%- unless ssl_mode.to_s == 'false' then -%> Include include.d/defaults.inc Include include.d/ssl_defaults.inc ServerName <%= servername %> <%- unless serveralias.to_s.empty? then -%> ServerAlias <%= serveralias %> <%- end -%> <%- unless server_admin.to_s.empty? or server_admin.to_s == 'absent' then -%> ServerAdmin <%= server_admin %> <%- end -%> DocumentRoot <%= documentroot %>/ <%- case logmode.to_s when 'nologs' -%> ErrorLog /dev/null CustomLog /dev/null <%- when 'semianonym' -%> ErrorLog <%= logdir %>/error_log CustomLog <%= logdir %>/access_log noip <%- when 'anonym' -%> ErrorLog /dev/null CustomLog <%= logdir %>/access_log noip <%- else -%> ErrorLog <%= logdir %>/error_log CustomLog <%= logdir %>/access_log combined <%- end -%> <%- if default_charset.to_s != 'absent' then -%> AddDefaultCharset <%= default_charset %> <%- end -%> <%- if ssl_mode.to_s == 'force' then -%> Header add Strict-Transport-Security "max-age=15768000" <%- end -%> SetEnv GITWEB_CONFIG <%= gitweb_config %> DirectoryIndex gitweb.cgi <%- if not ssl_mode.to_s == 'force' then -%> /"> <%- if options.to_s != 'absent' or do_includes.to_s == 'true' then -%> Options <%- unless options.to_s == 'absent' then -%><%= options %><%- end -%><%- if do_includes.to_s == 'true' and not options.include?('+Includes') then -%> +Includes<%- end -%><%- unless options.include?('+ExecCGI') then -%> +ExecCGI<%- end -%> <%- end -%> AddHandler cgi-script .cgi Options ExecCGI FollowSymLinks SetHandler cgi-script RewriteEngine on RewriteRule ^[a-zA-Z0-9_-]+.git/?(\?.)?$ /gitweb.cgi%{REQUESTURI} [L,PT] <%- unless htpasswd_file.to_s == 'absent' then -%> AuthType Basic AuthName "Access fuer <%= servername %>" AuthUserFile <%= real_htpasswd_path %> require valid-user <%- end -%> <%- end %> <%- if mod_security.to_s == 'true' then -%> SecRuleEngine On <%- if mod_security_relevantonly.to_s == 'true' then -%> SecAuditEngine RelevantOnly <%- else -%> SecAuditEngine On <%- end -%> <%- else -%> SecRuleEngine Off SecAuditEngine Off <%- end -%> SecAuditLogType Concurrent SecAuditLogStorageDir <%= logdir %>/ SecAuditLog <%= logdir %>/mod_security_audit.log SecDebugLog <%= logdir %>/mod_security_debug.log <%- unless additional_options.to_s == 'absent' then -%> <%= additional_options %> <%- end -%> <%- end -%>