Files
Anelia-Wolf/docs/SUBDOMAIN-HERCAREER.md
Kenso Grimm 33ec0df7e3 Messe-Landingpage /her-career/ zur herCAREER Expo 2026
Ziel des QR-Codes auf der Rückwandgrafik. Der gedruckte Code zeigt auf
https://her-career.anelia-wolf.com – die Adresse ist damit unveränderlich.
Die Seite liegt als /her-career/ im normalen Export, die Subdomain liefert
dieselbe Datei aus demselben Docroot aus; DNS, Zertifikat, Vhosts für nginx
und Apache und die Prüfbefehle stehen in docs/SUBDOMAIN-HERCAREER.md.

Aufbau in beiden Sprachen: Hero (ink) → 01 Messe-Special → 02 Themen →
03 Auf der Messe → 04 Kontakt mit dem Formular. Die vier Themenblöcke der
Rückwand liegen auf den drei Leistungsseiten, wie in der Navigation; jede
Zeile verlinkt absolut auf die Hauptdomain.

Der Wortlaut des Messe-Specials fehlt noch und steht sichtbar als „[…]“ auf
der Seite. Der Build-Guard hält den Launch-Flip an, bis er da ist
(CONTENT_TODO in src/lib/legal.ts, docs/OFFENE-DATEN.md Punkte 2.7–2.9).
Deadline ist nicht der Livegang, sondern der 22.10.2026.

- Canonical auf anelia-wolf.com/her-career/, damit die Subdomain-Kopie nicht
  ein zweites Mal im Index steht
- flags.showHerCareer trägt Termine-Ledger, Sitemap-Eintrag und die
  Meta-Beschreibung mit Stand und Uhrzeit. Ab dem 24.10.2026 auf false
- ServiceHero: facts und cta sind optional – ohne beides und ohne Foto
  entfällt die rechte Spalte
- ProcessContact: optionaler Zähler, die Messeseite nummeriert ihre Abschnitte
- Kopf-CTA auf dieser Seite ausgeblendet. Das macht eine Regel in globals.css,
  weil der Kopf außerhalb von <main> liegt und auf der Subdomain der Pfad
  ohnehin „/“ ist

Enthält außerdem die bis dahin nicht committeten Änderungen an Header,
LangSwitch, OverlayMenu, Wordmark und globals.css.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-07 22:39:32 +02:00

129 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Subdomain `her-career.anelia-wolf.com`
Stand: 07.09.2026 · Zuständig: webklar (Hoster-Konfiguration)
Auf der Rückwandgrafik am Messestand steht unten links ein QR-Code, beschriftet
„Messe-Special · Code scannen“. Er zeigt auf:
```
https://her-career.anelia-wolf.com
```
**Diese Adresse ist gedruckt.** Sie lässt sich nicht mehr ändern, und sie muss am
22.10.2026 funktionieren inklusive gültigem Zertifikat. Ein Scan, der auf einer
Zertifikatswarnung landet, ist schlimmer als kein Code.
Die Datei dahinter ist `out/her-career/index.html` aus dem normalen Build
(`npm run build`). Es gibt **keinen zweiten Build und kein zweites Deployment**
die Subdomain zeigt in denselben Docroot wie die Hauptdomain.
## Was einzurichten ist
1. **DNS:** `her-career` als A- (und AAAA-)Record auf dieselbe IP wie
`anelia-wolf.com`, oder als CNAME auf den Hauptdomain-Namen.
2. **Zertifikat:** Die Subdomain muss im Zertifikat stehen als weiterer
SAN-Eintrag (`certbot ... -d anelia-wolf.com -d www.anelia-wolf.com -d
her-career.anelia-wolf.com`) oder über ein Wildcard-Zertifikat.
3. **Vhost:** Derselbe Docroot, drei Regeln (unten). Kurz gesagt: `/` liefert die
Messeseite, ihre Dateien kommen aus demselben Verzeichnis, jede andere Adresse
wandert per 301 auf die Hauptdomain.
Der dritte Punkt ist der wichtige. Ohne ihn läge die **komplette Website** unter
zwei Hostnamen jede Seite doppelt, mit doppelten Adressen in der Suche. Die
Messeseite trägt zwar einen Canonical auf `https://anelia-wolf.com/her-career/`
(gesetzt in `src/app/(de)/her-career/page.tsx`), der die Kopie zusammenfasst; die
übrigen Seiten tun das für ihre Subdomain-Zwillinge nicht.
## nginx
```nginx
server {
listen 443 ssl;
http2 on;
server_name her-career.anelia-wolf.com;
ssl_certificate /etc/letsencrypt/live/anelia-wolf.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/anelia-wolf.com/privkey.pem;
# Derselbe Docroot wie die Hauptdomain: der hochgeladene Inhalt von out/.
root /var/www/anelia-wolf.com;
# „/“ ist die Messeseite.
location = / {
try_files /her-career/index.html =404;
}
# Was die Seite selbst lädt, kommt aus demselben Verzeichnis.
# (Leere Blöcke erben root und liefern die Datei aus kein Redirect.)
location /_next/ { }
location /brand/ { }
location /photos/ { }
location = /favicon.ico { }
location = /icon.svg { }
location = /apple-icon.png { }
# Alles andere gehört auf die Hauptdomain.
location / {
return 301 https://anelia-wolf.com$request_uri;
}
}
# Port 80 nur zum Hochreichen auf HTTPS.
server {
listen 80;
server_name her-career.anelia-wolf.com;
return 301 https://her-career.anelia-wolf.com$request_uri;
}
```
## Apache
```apache
<VirtualHost *:443>
ServerName her-career.anelia-wolf.com
DocumentRoot /var/www/anelia-wolf.com
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/anelia-wolf.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/anelia-wolf.com/privkey.pem
RewriteEngine On
# „/“ ist die Messeseite (intern, ohne Redirect die Adresse bleibt stehen).
RewriteRule ^/?$ /her-career/index.html [L]
# Dateien der Seite bleiben hier.
RewriteRule ^/(_next|brand|photos)/ - [L]
RewriteRule ^/(favicon\.ico|icon\.svg|apple-icon\.png)$ - [L]
# Alles andere auf die Hauptdomain.
RewriteRule ^/(.*)$ https://anelia-wolf.com/$1 [R=301,L]
</VirtualHost>
```
## Wenn der Hoster keine Rewrites kann
Dann die ganze Subdomain per 301 auf `https://anelia-wolf.com/her-career/`
umleiten. Der QR-Code funktioniert weiterhin der Browser folgt der Umleitung,
ohne dass jemand etwas merkt; in der Adresszeile steht danach die Hauptdomain.
Das ist die schlechtere, aber jederzeit funktionierende Variante.
## Prüfen (nach dem Ausrollen, vor der Messe)
```bash
curl -sI https://her-career.anelia-wolf.com/ | head -1
curl -s https://her-career.anelia-wolf.com/ | grep -o '<link rel="canonical"[^>]*>'
curl -sI https://her-career.anelia-wolf.com/impressum/ | head -2
```
Erwartet: `200`, ein Canonical auf `https://anelia-wolf.com/her-career/`, und für
`/impressum/` ein `301` auf `https://anelia-wolf.com/impressum/`.
Dazu einmal mit dem Handy den echten, gedruckten Code scannen nicht den aus der
PDF-Vorschau, sondern den auf dem gelieferten Druck.
## Nach der Messe
Ab dem 24.10.2026 steht in `src/lib/site.ts` `flags.showHerCareer` auf `false`
(siehe `docs/HANDOVER.md`, Abschnitt 6). Die Seite bleibt erreichbar gedruckte
Codes laufen weiter, und Anelias Rückwand wird nicht am Tag danach eingestampft ,
verliert aber die Termin-Angaben und den Eintrag in der Sitemap. Der Vhost bleibt,
wie er ist.