From 1b84527f8c5fb38c5d338f1189302b952cc4b43e Mon Sep 17 00:00:00 2001 From: Assaf Arkin Date: Mon, 23 Mar 2015 13:34:03 -0700 Subject: [PATCH] ADDED Nginx configuration for running behind load balancer --- plugins/nginx-vhosts/commands | 6 +++++- .../templates/nginx.terminated.conf | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 plugins/nginx-vhosts/templates/nginx.terminated.conf diff --git a/plugins/nginx-vhosts/commands b/plugins/nginx-vhosts/commands index be64d1751..c69bf40b5 100755 --- a/plugins/nginx-vhosts/commands +++ b/plugins/nginx-vhosts/commands @@ -111,7 +111,11 @@ EOF if [[ -n "$NONSSL_VHOSTS" ]]; then NOSSL_SERVER_NAME=$(echo $NONSSL_VHOSTS | tr '\n' ' ') xargs -i echo "-----> Configuring {}..." <<< "$NONSSL_VHOSTS" - [[ -z "$NGINX_CUSTOM_TEMPLATE" ]] && NGINX_TEMPLATE="$(dirname $0)/templates/nginx.conf.template" + if [[ -n "$DOKKU_SSL_TERMINATED" ]] && [[ -z "$NGINX_CUSTOM_TEMPLATE" ]]; then + NGINX_TEMPLATE="$(dirname $0)/templates/nginx.terminated.conf" + elif [[ -z "$NGINX_CUSTOM_TEMPLATE" ]]; then + NGINX_TEMPLATE="$(dirname $0)/templates/nginx.conf.template" + fi eval "cat <<< \"$(< $NGINX_TEMPLATE)\" >> $NGINX_CONF" fi diff --git a/plugins/nginx-vhosts/templates/nginx.terminated.conf b/plugins/nginx-vhosts/templates/nginx.terminated.conf new file mode 100644 index 000000000..bc7bc3a1d --- /dev/null +++ b/plugins/nginx-vhosts/templates/nginx.terminated.conf @@ -0,0 +1,19 @@ +# Nginx configuration when running behind a load balancer that terminates SSL +# connections (e.g. AWS ELB) +server { + listen [::]:80; + listen 80; + server_name $NOSSL_SERVER_NAME; + location / { + proxy_pass http://$APP; + proxy_http_version 1.1; + proxy_set_header Upgrade \$http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host \$http_host; + proxy_set_header X-Forwarded-Proto \$http_x_forwarded_proto; + proxy_set_header X-Forwarded-For \$http_x_forwarded_for; + proxy_set_header X-Forwarded-Port \$http_x_forwarded_port; + proxy_set_header X-Request-Start \$msec; + } + include $DOKKU_ROOT/$APP/nginx.conf.d/*.conf; +}