Compare commits

...

2 Commits

Author SHA1 Message Date
Lance Pioch
c784037ed4 Resolve real .env path and escape APP_URL for sed replacement 2026-02-07 23:21:04 -05:00
Lance Pioch
f4d572b0d3 Fix ASSET_URL not reaching PHP-FPM behind reverse proxy (#2026)
PHP-FPM's clear_env default strips shell environment variables, so the exported ASSET_URL was never visible to Laravel. This persists it to .env where Dotenv can read it.
2026-02-06 02:45:01 -05:00

View File

@@ -65,6 +65,20 @@ if [ "${BEHIND_PROXY}" == "true" ]; then
export PARSED_APP_URL=":80"
export PARSED_AUTO_HTTPS="auto_https off"
export ASSET_URL=${APP_URL}
# Write ASSET_URL to .env so PHP-FPM workers can read it (clear_env = yes by default)
ENV_FILE="/var/www/html/.env"
if [ -e "$ENV_FILE" ]; then
ENV_FILE="$(readlink -f "$ENV_FILE")"
else
ENV_FILE="/pelican-data/.env"
fi
ESCAPED_APP_URL="$(printf '%s' "$APP_URL" | sed 's/[&|]/\\&/g')"
if grep -q "^ASSET_URL=" "$ENV_FILE"; then
sed -i "s|^ASSET_URL=.*|ASSET_URL=${ESCAPED_APP_URL}|" "$ENV_FILE"
else
echo "ASSET_URL=${APP_URL}" >> "$ENV_FILE"
fi
fi
# disable caddy if SKIP_CADDY is set