# Production Deployment Guide ## Schritt 1: Environment Variable setzen 1. Erstelle `.env.production` Datei: ```env VITE_API_URL=https://dein-produktions-server.com/intern/sofue/php/sofueDB.php ``` 2. Oder setze die Environment Variable direkt beim Build: ```bash VITE_API_URL=https://dein-server.com/api npm run build:prod ``` ## Schritt 2: Production Build erstellen ```bash # Mit .env.production Datei npm run build:prod # Oder mit direkter Environment Variable VITE_API_URL=https://dein-server.com/api npm run build ``` ## Schritt 3: Build-Output deployen Die generierten Dateien im `dist/` Ordner auf deinen Webserver kopieren: ```bash # Lokaler Build npm run build:prod # Upload auf Server (Beispiel mit rsync) rsync -avz dist/ user@dein-server.com:/var/www/html/beoanswer/ # Oder mit scp scp -r dist/* user@dein-server.com:/var/www/html/beoanswer/ ``` ## Schritt 4: Webserver Konfiguration ### Apache (.htaccess) ```apache RewriteEngine On RewriteBase /beoanswer/ # Handle Angular and other front-end routes RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /beoanswer/index.html [L] # CORS Headers (falls nötig) Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Methods "GET, POST, OPTIONS" Header set Access-Control-Allow-Headers "Content-Type" ``` ### Nginx ```nginx location /beoanswer/ { try_files $uri $uri/ /beoanswer/index.html; # CORS Headers (falls nötig) add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS'; add_header Access-Control-Allow-Headers 'Content-Type'; } ``` ## Schritt 5: PHP Backend CORS Falls nötig, füge in `sofueDB.php` hinzu: ```php ``` ## Schritt 6: Testen 1. Lokaler Test des Production Builds: ```bash npm run preview:prod ``` 2. Live-Test mit echter URL: ``` https://dein-server.com/beoanswer/?id=123 ``` ## Troubleshooting - **CORS Fehler**: Backend CORS Headers prüfen - **404 Fehler**: Webserver Routing konfigurieren - **API Fehler**: Environment Variable und Backend-URL prüfen - **Asset Loading**: Base URL in Vite Config setzen falls nötig