feat(deploy): CRM auch unter crm.perinco.de erreichbar
ServerAlias in beiden Vhosts, HTTP->HTTPS-Redirect fuer beide Namen, Zertifikat um crm.perinco.de erweitert. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
d35e089a4c
commit
0ad7b32dbf
@@ -1,6 +1,7 @@
|
||||
<IfModule mod_ssl.c>
|
||||
<VirtualHost *:443>
|
||||
ServerName pcrm.perinco.de
|
||||
ServerAlias crm.perinco.de
|
||||
DocumentRoot /var/www/perinco_CRM/dist
|
||||
|
||||
<Directory /var/www/perinco_CRM/dist>
|
||||
|
||||
@@ -5,12 +5,15 @@
|
||||
# Reihenfolge beim Aufsetzen:
|
||||
# 1. DNS A-Record pcrm.perinco.de -> 212.227.135.41
|
||||
# 2. Diese Datei aktivieren (HTTP-Teil), Apache neu laden
|
||||
# 3. certbot --apache -d pcrm.perinco.de (legt den :443-Block selbst an)
|
||||
# 3. certbot --apache -d pcrm.perinco.de -d crm.perinco.de (legt den :443-Block selbst an)
|
||||
#
|
||||
# crm.perinco.de ist seit 16.09.2026 zweiter Name (ServerAlias, gleiches Zertifikat).
|
||||
#
|
||||
# ServerName bei anderer Subdomain hier UND im certbot-Aufruf anpassen.
|
||||
|
||||
<VirtualHost *:80>
|
||||
ServerName pcrm.perinco.de
|
||||
ServerAlias crm.perinco.de
|
||||
DocumentRoot /var/www/perinco_CRM/dist
|
||||
|
||||
<Directory /var/www/perinco_CRM/dist>
|
||||
@@ -30,6 +33,7 @@
|
||||
ErrorLog ${APACHE_LOG_DIR}/perinco_crm_error.log
|
||||
CustomLog ${APACHE_LOG_DIR}/perinco_crm_access.log combined
|
||||
RewriteEngine on
|
||||
RewriteCond %{SERVER_NAME} =pcrm.perinco.de
|
||||
RewriteCond %{SERVER_NAME} =pcrm.perinco.de [OR]
|
||||
RewriteCond %{SERVER_NAME} =crm.perinco.de
|
||||
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
|
||||
</VirtualHost>
|
||||
|
||||
@@ -13,13 +13,15 @@ SQL:
|
||||
|
||||
Der Browser spricht **nie** direkt mit MariaDB - deshalb überhaupt ein Backend.
|
||||
Das Backend bindet ausschließlich auf `127.0.0.1` und ist von außen nur über
|
||||
den Apache-Reverse-Proxy erreichbar.
|
||||
den Apache-Reverse-Proxy erreichbar. Das CRM hört auf `pcrm.perinco.de` und
|
||||
seit 16.09.2026 auch auf `crm.perinco.de` (`ServerAlias` im selben Vhost, beide
|
||||
Namen im selben Let’s-Encrypt-Zertifikat).
|
||||
|
||||
## Topologie
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
U(("Browser")) -->|"HTTPS"| A["Apache :443<br/>pcrm.perinco.de"]
|
||||
U(("Browser")) -->|"HTTPS"| A["Apache :443<br/>pcrm.perinco.de<br/>crm.perinco.de"]
|
||||
A -->|"/"| D["dist/<br/>SPA, FallbackResource"]
|
||||
A -->|"/api"| E["Express :5006"]
|
||||
E --> C[("perinco_CRM")]
|
||||
|
||||
@@ -18,7 +18,7 @@ Ein CRM für die Projektvermittlung. Es beantwortet vier Fragen:
|
||||
|
||||
## Anmelden
|
||||
|
||||
`https://pcrm.perinco.de`. Anmelden geht mit **Benutzername oder E-Mail** plus
|
||||
`https://crm.perinco.de` (alternativ `https://pcrm.perinco.de`). Anmelden geht mit **Benutzername oder E-Mail** plus
|
||||
Passwort. Die Sitzung hält 12 Stunden, danach fragt die Anwendung erneut.
|
||||
|
||||
Sagt die Meldung „Benutzername oder Passwort ist falsch", bleibt bewusst offen,
|
||||
|
||||
Reference in New Issue
Block a user