# This file is managed by gitlab-ctl. Manual changes will be # erased! To change the contents below, edit /etc/gitlab/gitlab.rb # and run `sudo gitlab-ctl reconfigure`. user <%= node['gitlab']['web_server']['username'] %> <%= node['gitlab']['web_server']['group']%>; worker_processes <%= @worker_processes %>; error_log stderr; pid nginx.pid; daemon off; events { worker_connections <%= @worker_connections %>; } http { log_format gitlab_access '<%= @gitlab_access_log_format %>'; log_format gitlab_mattermost_access '<%= @gitlab_mattermost_access_log_format %>'; hide_server_tokens <%= @hide_server_tokens %>; server_names_hash_bucket_size <%= @server_names_hash_bucket_size %>; sendfile <%= @sendfile %>; tcp_nopush <%= @tcp_nopush %>; tcp_nodelay <%= @tcp_nodelay %>; keepalive_timeout <%= @keepalive_timeout %>; keepalive_time <%= @keepalive_time %>; gzip <%= @gzip %>; <% if @gzip_enabled %> gzip_http_version <%= @gzip_http_version %>; gzip_comp_level <%= @gzip_comp_level %>; gzip_proxied <%= @gzip_proxied %>; gzip_types <%= @gzip_types.join(' ') %>; <% end %> include /opt/gitlab/embedded/conf/mime.types; proxy_cache_path <%= @proxy_cache_path %>; proxy_cache <%= @proxy_cache %>; map $http_upgrade $connection_upgrade { default upgrade; '' close; } # Remove private_token from the request URI # In: /foo?private_token=unfiltered&authenticity_token=unfiltered&rss_token=unfiltered&... # Out: /foo?private_token=[FILTERED]&authenticity_token=unfiltered&rss_token=unfiltered&... map $request_uri $temp_request_uri_1 { default $request_uri; ~(?i)^(?.*)(?[\?&]private[\-_]token)=[^&]*(?.*)$ "$start$temp=[FILTERED]$rest"; } # Remove authenticity_token from the request URI # In: /foo?private_token=[FILTERED]&authenticity_token=unfiltered&rss_token=unfiltered&... # Out: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&rss_token=unfiltered&... map $temp_request_uri_1 $temp_request_uri_2 { default $temp_request_uri_1; ~(?i)^(?.*)(?[\?&]authenticity[\-_]token)=[^&]*(?.*)$ "$start$temp=[FILTERED]$rest"; } # Remove rss_token from the request URI # In: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&rss_token=unfiltered&... # Out: /foo?private_token=[FILTERED]&authenticity_token=[FILTERED]&rss_token=[FILTERED]&... map $temp_request_uri_2 $filtered_request_uri { default $temp_request_uri_2; ~(?i)^(?.*)(?[\?&]rss[\-_]token)=[^&]*(?.*)$ "$start$temp=[FILTERED]$rest"; } # A version of the referer without the query string map $http_referer $filtered_http_referer { default $http_referer; ~^(?.*)\? $temp; } <% if @status['vts_enable'] -%> # Enable vts status module. vhost_traffic_status_zone; <% end -%> upstream gitlab-workhorse { server <%= "unix:" if node['gitlab']['gitlab_workhorse']['listen_network'] == "unix" %><%= node['gitlab']['gitlab_workhorse']['listen_addr'] %>; } <% if @gitlab_http_config %> include <%= @gitlab_http_config %>; <% end %> <% if @gitlab_smartcard_http_config %> include <%= @gitlab_smartcard_http_config %>; <% end %> <% if @gitlab_pages_http_config %> include <%= @gitlab_pages_http_config %>; <% end %> <% if @gitlab_mattermost_http_config %> include <%= @gitlab_mattermost_http_config %>; <% end %> <% if @gitlab_registry_http_config %> include <%= @gitlab_registry_http_config %>; <% end %> <% if @gitlab_kas_http_config %> include <%= @gitlab_kas_http_config %>; <% end %> <% if @nginx_status_config %> include <%= @nginx_status_config %>; <% end %> <%= @custom_nginx_config %> }