# <%= 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 -%>