134 lines
3.7 KiB
Markdown
134 lines
3.7 KiB
Markdown
# PHPMailer Installation für Frida & Fred Kontaktformular
|
|
|
|
## Schritt 1: PHPMailer herunterladen
|
|
|
|
### Option A: Mit Composer (empfohlen, wenn verfügbar)
|
|
```bash
|
|
composer require phpmailer/phpmailer
|
|
```
|
|
|
|
### Option B: Manueller Download (für klassisches Webhosting)
|
|
|
|
1. Gehe zu: https://github.com/PHPMailer/PHPMailer/releases/latest
|
|
2. Lade die ZIP-Datei herunter
|
|
3. Entpacke die Datei
|
|
4. Kopiere den Ordner `src` aus dem PHPMailer-Verzeichnis
|
|
5. Benenne `src` in `PHPMailer` um
|
|
6. Lade den `PHPMailer` Ordner auf deinen Server in das Verzeichnis `/vendor/phpmailer/phpmailer/`
|
|
|
|
Die Struktur sollte so aussehen:
|
|
```
|
|
Webseite/
|
|
├── vendor/
|
|
│ └── phpmailer/
|
|
│ └── phpmailer/
|
|
│ └── src/
|
|
│ ├── PHPMailer.php
|
|
│ ├── SMTP.php
|
|
│ ├── Exception.php
|
|
│ └── ...
|
|
├── send-mail.php
|
|
├── index.html
|
|
└── ...
|
|
```
|
|
|
|
### Option C: Manuelle Einbindung (ohne Composer)
|
|
|
|
Falls du keinen `vendor` Ordner erstellen möchtest, kannst du PHPMailer auch direkt einbinden:
|
|
|
|
1. Lade die drei Hauptdateien herunter:
|
|
- PHPMailer.php
|
|
- SMTP.php
|
|
- Exception.php
|
|
|
|
2. Speichere sie in einem Ordner `phpmailer/` im Hauptverzeichnis
|
|
|
|
3. Ändere in `send-mail.php` die Zeile:
|
|
```php
|
|
require 'vendor/autoload.php';
|
|
```
|
|
zu:
|
|
```php
|
|
require 'phpmailer/Exception.php';
|
|
require 'phpmailer/PHPMailer.php';
|
|
require 'phpmailer/SMTP.php';
|
|
|
|
use PHPMailer\PHPMailer\PHPMailer;
|
|
use PHPMailer\PHPMailer\SMTP;
|
|
use PHPMailer\PHPMailer\Exception;
|
|
```
|
|
|
|
## Schritt 2: SMTP-Zugangsdaten konfigurieren
|
|
|
|
Öffne `send-mail.php` und trage die SMTP-Daten ein:
|
|
|
|
```php
|
|
define('SMTP_HOST', 'mail.webfarben.net'); // SMTP-Server von webfarben.net
|
|
define('SMTP_PORT', 587); // Port für TLS (oder 465 für SSL)
|
|
define('SMTP_USERNAME', 'frida@webfarben.net');
|
|
define('SMTP_PASSWORD', 'DEIN_PASSWORT_HIER');
|
|
define('SMTP_SECURE', 'tls'); // 'tls' oder 'ssl'
|
|
```
|
|
|
|
### Wichtige Hinweise zu SMTP-Einstellungen:
|
|
|
|
- **SMTP_HOST**: Meist `mail.domain.de` oder `smtp.domain.de`
|
|
- **SMTP_PORT**:
|
|
- Port 587 für TLS (empfohlen)
|
|
- Port 465 für SSL
|
|
- Port 25 (oft blockiert bei Hosting-Providern)
|
|
- **SMTP_SECURE**:
|
|
- `tls` für Port 587
|
|
- `ssl` für Port 465
|
|
|
|
Wenn du die SMTP-Daten nicht kennst, frage deinen Hosting-Provider (webfarben.net) nach:
|
|
- SMTP-Server-Adresse
|
|
- SMTP-Port
|
|
- Verschlüsselungsmethode (TLS/SSL)
|
|
|
|
## Schritt 3: Testen
|
|
|
|
1. Lade alle Dateien auf deinen Server hoch
|
|
2. Öffne deine Website im Browser
|
|
3. Fülle das Kontaktformular aus
|
|
4. Sende eine Test-Nachricht
|
|
5. Prüfe, ob die E-Mail bei `frida@webfarben.net` ankommt
|
|
|
|
## Troubleshooting
|
|
|
|
### Fehler: "Could not authenticate"
|
|
- Überprüfe Benutzername und Passwort
|
|
- Stelle sicher, dass SMTP-Auth aktiviert ist
|
|
|
|
### Fehler: "Connection refused"
|
|
- Prüfe SMTP_HOST und SMTP_PORT
|
|
- Eventuell ist Port 587 oder 465 bei deinem Provider blockiert
|
|
- Kontaktiere deinen Hosting-Support
|
|
|
|
### Fehler: "vendor/autoload.php not found"
|
|
- PHPMailer wurde nicht korrekt installiert
|
|
- Siehe Option C für manuelle Einbindung
|
|
|
|
### Debug-Modus aktivieren
|
|
|
|
Falls du Probleme hast, aktiviere den Debug-Modus in `send-mail.php`:
|
|
```php
|
|
$mail->SMTPDebug = 2; // Ändere von 0 auf 2
|
|
```
|
|
|
|
**Wichtig**: Deaktiviere den Debug-Modus wieder, bevor die Website live geht!
|
|
|
|
## Sicherheit
|
|
|
|
- Speichere das SMTP-Passwort niemals in einem öffentlichen Repository
|
|
- Verwende starke Passwörter für das E-Mail-Konto
|
|
- Rate-Limiting ist bereits aktiviert (1 Nachricht/Minute)
|
|
- Honeypot-Spam-Schutz ist implementiert
|
|
|
|
## Support
|
|
|
|
Bei Fragen oder Problemen:
|
|
1. Prüfe die PHP-Error-Logs auf dem Server
|
|
2. Teste mit Debug-Modus (siehe oben)
|
|
3. Kontaktiere deinen Hosting-Provider für SMTP-Unterstützung
|