Teste mal, ich hab einiges schon geändert, sollte nun ein schönes Formular kommen und eine nette Mail
Um den Rest kümmer ich mich noch... wie gesagt Arbeit, Arbeit ....
Die .htaccess ist ja im Verzeichnis Kontakt oder wie es auch immer heißen mag, also dort wo send.php und der Rest sich befindet. Da kann eigentlich nicht auf dem restlichen Webspace durcheinander kommen. Sollte die falsch sein, wäre es auch nicht so schlimm. Ich hab dazu geschriebn wofür was ist.
Im Moment geht nur das Rechen Captcha, Google folgt, aber auch hier werden dann die Schlüssel über das Formular eingegeben. Da kann man ja auch Dummys eingeben
Bild Captcha geht im Moment noch nicht ... muss den Fehler noch suchen
Die Mails kommen formatiert an :
Code: Alles auswählen
[code]<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^success.php$ - [L]
RewriteRule ^send.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
<IfModule mod_rewrite.c> … überprüft, ob das Apache-Modul mod_rewrite aktiv ist. Nur dann werden die Regeln ausgeführt.
RewriteEngine On … aktiviert die Umschreibefunktion.
RewriteRule ^success.php$ - [L]
Wenn jemand genau success.php aufruft, wird nichts umgeschrieben (das - bedeutet: keine Änderung). Das [L] sagt „Last rule“ → danach keine weiteren Regeln prüfen.
RewriteRule ^send.php$ - [L]
Gleiches Prinzip wie oben für send.php.
RewriteCond %{REQUEST_FILENAME} !-f
Bedingung: Die angeforderte Datei existiert nicht als echte Datei.
RewriteCond %{REQUEST_FILENAME} !-d
Bedingung: Die angeforderte Datei existiert nicht als echtes Verzeichnis.
RewriteRule . /index.php [L]
Wenn die Bedingungen erfüllt sind (also Datei/Ordner gibt es nicht), wird alles auf index.php umgeleitet.
→ Typischer Mechanismus für einfaches Routing (z. B. bei PHP-Anwendungen, Blogs oder CMS).
Code: Alles auswählen
<IfModule mod_php.c>
php_value include_path .
</IfModule>
Prüft, ob PHP als Apache-Modul läuft.
php_value include_path . setzt den Include-Pfad von PHP auf das aktuelle Verzeichnis (.).
→ Damit kann PHP Dateien aus dem aktuellen Ordner laden, auch ohne vollständigen Pfad.
→ Hat speziell für PHPMailer (oder ähnliche Bibliotheken) Sinn, wenn man Klassen ohne lange Pfadangaben einbinden will.
Code: Alles auswählen
<IfModule mod_rewrite.c>
RewriteRule ^uploads/ - [F,L]
</IfModule>
Wenn jemand versucht, direkt Dateien aus dem Ordner /uploads/ aufzurufen, wird das mit [F] blockiert (Forbidden).
[L] sorgt dafür, dass danach keine weiteren Regeln greifen.
Sinn: Man will zwar Uploads speichern, aber nicht öffentlich ausführbar machen (z. B. keine .php-Datei aus uploads/ starten).
Neue Sicherheits Features eingebaut: CSRF-Token und Honeypot-Feld. Weitere folgen nach Tests...
Bild Captcha hinzugefügt. Nun kann man wählen kein Captcha, Rechenaufgabe, Bild oder Google reCatpcha