#!/usr/bin/env sh set -eu # Properly detect requested redirect if [ "${REDIRECT_PROTO}" == "auto" ]; then REDIRECT_PROTO="\$http_x_forwarded_proto"; elif [ "${REDIRECT_PROTO}" != "http" ] && [ "${REDIRECT_PROTO}" != "https" ]; then echo "ERROR: Invalid value for REDIRECT_PROTO, got '${REDIRECT_PROTO}'" >&2 echo "ERROR: Valid values are: 'auto', 'http' or 'https'" >&2 exit 1 fi # Replace templates in nginx config for file in /etc/nginx/*/*.tpl; do sed \ -e "s#{{DOCUMENT_ROOT}}#${DOCUMENT_ROOT}#g" \ -e "s#{{REDIRECT_CODE}}#${REDIRECT_CODE}#g" \ -e "s#{{REDIRECT_PROTO}}#${REDIRECT_PROTO}#g" \ "${file}" \ > "${file%.tpl}" done # Activate the right rm -f /etc/nginx/sites-enabled/redirect-*.conf if [[ -f "/etc/nginx/sites-available/redirect-${REDIRECT_MODE}.conf" ]]; then ln -s \ "/etc/nginx/sites-available/redirect-${REDIRECT_MODE}.conf" \ "/etc/nginx/sites-enabled/redirect-${REDIRECT_MODE}.conf" fi exec /usr/bin/supervisord -c /etc/supervisord.conf