Wo muss ich die send_mail.php speichern

  • Hallo Gemeinde,


    ich bin Anfänger und möchte auf einer Web-Seite ein Kontaktformular realisieren.

    Hierzu stellt sich mir die Frage, wohin ich die Datei send_mail.php auf dem Server (Webhosting) speichern muss.

    Wenn ich diese mit ins Verzeichnis in dem auch die restlichen *.htm/html Dateien liegen speichere, kommt es beim Ausführen zu einer Fehlermeldung

    Server Error 404 Page Not Found

    https://www.mydomain.de/send_email.php


    Was mache ich falsch?


    Danke für die Unterstützung

  • Darf man fragen, woher Du diese send_mail.php hast?


    Hintergrund: Es kursieren (leider) noch immer relativ viele solcher Scripts im Internet, die absoluter Müll sind und ein offenes Scheunentor für den Versand von Spam an unbeteiligte Dritte darstellen. Als Laie ist es oftmals unmöglich diese winzigen enthaltenen Programmierfehler sofort zu erkennen.

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

    2 Mal editiert, zuletzt von KB19 ()

  • Ist das Müll?

    Ohne Gewähr, nach einem schnellen Blick: Dank filter_var(…, FILTER_VALIDATE_EMAIL) ist es glücklicherweise nicht anfällig für eine Header-Injection, aber Du wirst damit wahrscheinlich früher oder später Probleme mit DMARC bekommen. Besser wäre es, wenn der From Header auf eine eigene Adresse gesetzt wird, zu dessen Versand der Webserver berechtigt ist. Die Absenderadresse kann man dann immer noch als Reply-To Header integrieren.


    Statt diesem Teil:

    PHP
    if ($sendermail_antwort and isset($_POST[$name_von_emailfeld]) and filter_var($_POST[$name_von_emailfeld], FILTER_VALIDATE_EMAIL)) {
       $email_from = $_POST[$name_von_emailfeld];
    }
     
    $header="From: $email_from";

    Etwas in dieser Art:

    PHP
    $header="From: $email_from";
    
    if ($sendermail_antwort and isset($_POST[$name_von_emailfeld]) and filter_var($_POST[$name_von_emailfeld], FILTER_VALIDATE_EMAIL)) {
       $header .= "\nReply-To: " . $_POST[$name_von_emailfeld];
    }

    Unabhängig davon wäre der Versand über SMTP (mit eigenen Zugangsdaten) wahrscheinlich zuverlässiger als mail() zu verwenden. PHPMailer wäre hierfür eine gute Wahl, aber das sprengt den Rahmen dieses Beitrags.

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

    Gefällt mir 4
  • Unabhängig davon wäre der Versand über SMTP (mit eigenen Zugangsdaten) wahrscheinlich zuverlässiger als mail() zu verwenden. PHPMailer wäre hierfür eine gute Wahl, aber das sprengt den Rahmen dieses Beitrags.

    Danke


    habe einen neuen Tread eröffnet

    Wie verwende ich PHPMailer in einem WebHosting Paket - netcup Kundenforum
    Abgespaltet vom Tread https://forum.netcup.de/webhos…php-speichern/#post184822 möchte ich das Thema gerne hier weiter verfolgen. Habe mir dies nun mal…
    forum.netcup.de


    Gruß Christopher