Serve the site under demo.lumbridgecorp.com as well
ci / web (push) Successful in 3m34s
ci / python (push) Successful in 3m44s

One Caddy block, both names, same root. The prerendered HTML already carries
<link rel="canonical"> and og:url pointing at the primeintellectgrowth name on
every route, so the alias does not split search ranking or leave a shared link
ambiguous about which site it belongs to. Verified byte-identical: both
hostnames return the same sha256 for /demos/wordle.

Worth recording why the alias failed before this rather than 404ing.
lumbridgecorp.com resolves on a WILDCARD, so every subdomain of it points at
cloud-2 whether or not Caddy knows the name. DNS completes, TLS opens, Caddy
finds no certificate for that SNI and aborts the handshake — the browser reports
ERR_SSL_PROTOCOL_ERROR, which reads as "the site is down" rather than "wrong
hostname". primeintellectgrowth.com has no wildcard, which is why the canonical
name needed an explicit A record.

deploy.sh now smoke-tests the alias too: if the block is ever edited to drop the
second name, the failure mode is a TLS error, and nothing else would catch it.

The live block is mirrored into deploy/Caddyfile.demo so the config is
reviewable in the repo rather than only on the host.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019mt6sHQHEnEYrJZvoMCJSB
This commit is contained in:
karti-ai
2026-08-28 17:06:30 -07:00
parent c4bf0c197e
commit 1cd1d3bbba
3 changed files with 67 additions and 2 deletions
+9
View File
@@ -14,6 +14,11 @@ HOST="${PIG_DEMO_HOST:-ubuntu@100.92.185.76}"
ROOT="/var/www/demo.primeintellectgrowth.com"
SNAPS="${ROOT}-rollbacks"
URL="https://demo.primeintellectgrowth.com"
# Served from the same root under a second name. Checked because DNS for
# lumbridgecorp.com is a WILDCARD: the alias resolves whether or not Caddy knows
# about it, and an unconfigured name fails the TLS handshake outright rather
# than 404ing — which reads as "the site is down", not "wrong hostname".
ALIAS="https://demo.lumbridgecorp.com"
cd "$(dirname "$0")/.."
@@ -69,4 +74,8 @@ for path in /sitemap.xml /robots.txt /og/wordle.png; do
[ "$code" = "200" ] || { echo "FAILED: $path returned $code"; exit 1; }
done
alias_code=$(curl -sS -o /dev/null -w '%{http_code}' --max-time 30 "$ALIAS/" || echo 000)
echo " alias $ALIAS -> $alias_code"
[ "$alias_code" = "200" ] || { echo "FAILED: the alias hostname returned $alias_code"; exit 1; }
echo "==> live: $URL"