85 lines
2.6 KiB
Text
85 lines
2.6 KiB
Text
|
|
||
|
{% if (nginx_vhost_ssl is defined and nginx_vhost_ssl) %}
|
||
|
|
||
|
# The HTTP is a simple redirect to the HTTPS part
|
||
|
server {
|
||
|
listen 80; # Listen on port 80 for IPv4 requests
|
||
|
listen [::]:80;
|
||
|
server_name {{ nginx_vhost_main_hostname }} {{ nginx_vhost_resource_hostname }};
|
||
|
rewrite ^ https://$http_host$request_uri? permanent; # force redirect http to https
|
||
|
server_tokens off;
|
||
|
}
|
||
|
|
||
|
server {
|
||
|
listen 443;
|
||
|
listen [::]:443;
|
||
|
|
||
|
ssl on;
|
||
|
ssl_certificate {{ nginx_vhost_ssl_certificate_file }};
|
||
|
ssl_certificate_key {{ nginx_vhost_ssl_key_file }};
|
||
|
ssl_session_timeout 5m;
|
||
|
ssl_session_cache shared:SSL:5m;
|
||
|
|
||
|
#add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
|
||
|
server_tokens off;
|
||
|
|
||
|
{% else %}
|
||
|
# Plain HTTP
|
||
|
server {
|
||
|
listen 80; # Listen on port 80 for IPv4 requests
|
||
|
listen [::]:80;
|
||
|
{% endif %}
|
||
|
|
||
|
server_name {{ nginx_vhost_main_hostname }} {{ nginx_vhost_resource_hostname }};
|
||
|
|
||
|
#this is the jenkins web root directory (mentioned in the /etc/default/jenkins file)
|
||
|
root /var/cache/jenkins/war/;
|
||
|
|
||
|
access_log /var/log/nginx/jenkins-access.log;
|
||
|
error_log /var/log/nginx/jenkins-error.log;
|
||
|
ignore_invalid_headers off; #pass through headers from Jenkins which are considered invalid by Nginx server.
|
||
|
|
||
|
location ~ "^/static/[0-9a-fA-F]{8}\/(.*)$" {
|
||
|
#rewrite all static files into requests to the root
|
||
|
#E.g /static/12345678/css/something.css will become /css/something.css
|
||
|
rewrite "^/static/[0-9a-fA-F]{8}\/(.*)" /$1 last;
|
||
|
}
|
||
|
|
||
|
location /userContent {
|
||
|
#have nginx handle all the static requests to the userContent folder files
|
||
|
#note : This is the $JENKINS_HOME dir
|
||
|
root /var/lib/jenkins/;
|
||
|
if (!-f $request_filename){
|
||
|
#this file does not exist, might be a directory or a /**view** url
|
||
|
rewrite (.*) /$1 last;
|
||
|
break;
|
||
|
}
|
||
|
sendfile on;
|
||
|
}
|
||
|
|
||
|
location / {
|
||
|
sendfile off;
|
||
|
proxy_pass http://127.0.0.1:8080;
|
||
|
proxy_redirect default;
|
||
|
proxy_http_version 1.1;
|
||
|
|
||
|
proxy_set_header Host $host;
|
||
|
proxy_set_header X-Real-IP $remote_addr;
|
||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||
|
proxy_max_temp_file_size 0;
|
||
|
|
||
|
#this is the maximum upload size
|
||
|
client_max_body_size 10m;
|
||
|
client_body_buffer_size 128k;
|
||
|
|
||
|
proxy_connect_timeout 90;
|
||
|
proxy_send_timeout 90;
|
||
|
proxy_read_timeout 90;
|
||
|
proxy_buffering off;
|
||
|
proxy_request_buffering off; # Required for HTTP CLI commands in Jenkins > 2.54
|
||
|
proxy_set_header Connection ""; # Clear for keepalive
|
||
|
}
|
||
|
|
||
|
}
|