32 lines
1.0 KiB
Bash
Executable File
32 lines
1.0 KiB
Bash
Executable File
#!/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
|