Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] PHPmailer - welche Dateien benötigt

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] PHPmailer - welche Dateien benötigt

    Hallo,

    ich versuche gerade vergeblich, den PHPmailer in Betrieb zu nehmen.

    So bin ich nun hier gelandet: https://github.com/PHPMailer/PHPMailer/tree/master und kann mir aber nicht vorstellen, dass ich diese komplette Verzeichnisstruktur wie sie dort ersichtlich ist auch bei mir übernehmen muss.

    Welches sind denn nun die Dateien, die ich bei mir ablegen muss um Mails über smtp versenden zu können?

    Danke.


  • #2
    https://github.com/PHPMailer/PHPMail...l-installation

    Kommentar


    • #3
      Warum downloadest du nicht einfach die Zip-Datei, da ist alles drin, was du brauchst
      Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

      Kommentar


      • #4
        Gut, ich habe nun in /scripts/phpmailer/ die 2 Dateien class.phpmailer.php und class.smtp.php liegen.

        Nun steht da was von autoloader, ich habe auch mal in diese PHPMailerAutoload.php reingeschaut, aber verstehe nicht so Recht, was der Sinn dahinter sein soll.
        In dem Beispiel für die Inbetriebnahme ist diese Datei auch inkludiert: require 'PHPMailerAutoload.php';
        D.h. wenn ich nun den Pfad zu dieser Autoload angebe inkludiert diese mir alle Dateien mit class.xxx.php rein?

        Werde es nun mal testen. Gibt es noch irgendetwas zu beachten, ich glaube im Zusammenhang mit richtigem Verschicken von E-Mails kann man einiges verkehrt machen. Z.B. habe ich gerade hier die Erklärung, was es mit wordwrap auf sich hat:
        $mail->WordWrap = 50; is a feature of PHPMailer to word-wrap your message limiting all lines to a maximum length of X characters, even if not set as body= .... Admittedly, there's not much point in wrapping the text in a message as brief as the one in this example.
        Also was soll ich denn da nun einstellen, wenn 50 keinen Sinn macht? Oder ganz rausnehmen? 0 reinschreiben? Macht das bei HTML-Nachrichten überhaupt eine Auswirkung?

        Danke und Gruß

        Kommentar


        • #5
          in #minimal-installation steht nichts von autoload. ---- äh doch.

          Kommentar


          • #6
            Doch:

            For all of these, we recommend you use the autoloader too.
            <?php
            require 'PHPMailerAutoload.php';
            Aber egal. Habe es nun drin. Muss jetzt noch testen...

            Danke.

            Kommentar


            • #7
              mein fehler, sorry,

              aber es ist nicht required, immerhin.
              D.h. wenn ich nun den Pfad zu dieser Autoload angebe inkludiert diese mir alle Dateien mit class.xxx.php rein?
              nur wenn sie gebraucht werden soweit ich weiss:
              Zitat von http://php.net/manual/en/function.autoload.php
              __autoload — Attempt to load undefined class
              das schien mir auch immer der sinn dahinter.

              Kommentar


              • #8
                Komisch, habe nun alle Einstellungen vorgenommen, mit meinem bisherigen Server klappt es, mit dem neuen nicht.

                Da kommt immer: "SMTP connect() failed."

                Hostname, Mailbox-User und -PW sind natürlich korrekt eingetragen. Kann es sein, dass ich zuvor noch irgendeine Einstellung von PHP oder am Server ändern muss? Oder am Plesk 12 was freigeben damit es klappt?

                Wenn ich das Script auf dem neuen Server laufen lasse, aber eine Domain als Host die auf dem alten Server liegt, eintrage, klappt es auch.

                Danke.

                Kommentar


                • #9
                  Zitat von erdkröte Beitrag anzeigen
                  Kann es sein, dass ich zuvor noch irgendeine Einstellung von PHP oder am Server ändern muss?
                  Nein
                  Zitat von erdkröte Beitrag anzeigen
                  Oder am Plesk 12 was freigeben damit es klappt?
                  Auch nein.

                  Mögliche Kandidaten: SSL? Port?
                  Die Deutsche Rechtschreibung ist Freeware! Du darfst sie kostenlos nutzen, allerdings ist sie nicht Open Source, d.h. Du darfst sie nicht verändern oder in veränderter Form veröffentlichen.

                  Kommentar


                  • #10
                    SMTPDebug hast an (=2)und da kommt nicht mehr?
                    sonst versuch halt mal ne ,mail über die console zu verschicken, da wird dir dann doch erklärt was phase ist.

                    Kommentar


                    • #11
                      Habe bei der Config von PHPmailer bei SMTPSecure starttls reingeschrieben, weil ich nachgesehen habe und das auch im Postausgang im Thunderbird bei meinem Domains die ich über Plesk verwalte so eingetragen habe.

                      Mail über die Konsole... Wenn Du mir jetzt noch sagst, wie das geht.

                      Btw - die im Plesk angelegte Domain unter der die Website gehostet wird, ist momentan noch auf die alte Server-IP geleitet. Hatte eben temporär mal zum Testen die Domain auf die neue Server-IP geleitet, weil ich den Verdacht hatte, es liegt daran. Aber auch das klappte nicht, obwohl für diesen Test unter der Domain der neue Server bereits kurz nach Änderung im DNS erreichbar war.

                      Was ist mit SSL gemeint? Port sollte wohl Standard sein, laut Plesks Admin Guide ist es bei SMTP 25.

                      So, nun mal ein $mail->SMTPDebug = 2; reingesetzt, dann bekomme ich jedenfalls per json gar keinen Status zurück, geloggt wird die normale Meldung "SMTP connect() failed." wie vorher auch. Oder wie läuft das mit dem $mail->SMTPDebug = 2; ? Müsste ich für diesen Fall die ausführende Datei direkt aufrufen (was bisher im Hintergrund geschieht)?

                      Danke.

                      Kommentar


                      • #12
                        startls läuft innerhalb der kommunikation, dh:
                        Code:
                        telnet example.com 25
                        müsste schon fehlschlagen.

                        Kommentar


                        • #13
                          So, habe nun eine neue Datei mit nur diesem Mailkram erstellt und da sehe ich dann die komplette Debugausgabe:

                          2014-07-19 15:06:40 SERVER -> CLIENT: 220 nsxxx.ip-142-4-xxx.net ESMTP Postfix 2014-07-19 15:06:40 CLIENT -> SERVER: EHLO 142.4.xxx 2014-07-19 15:06:40 SERVER -> CLIENT: 250-nsxxx.ip-142-4-xxx.net 250-PIPELINING 250-SIZE 51200000 250-ETRN 250-STARTTLS 250-AUTH DIGEST-MD5 LOGIN PLAIN CRAM-MD5 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN 2014-07-19 15:06:40 CLIENT -> SERVER: AUTH LOGIN 2014-07-19 15:06:40 SERVER -> CLIENT: 454 4.3.0 Try again later 2014-07-19 15:06:40 SMTP ERROR: AUTH command failed: 454 4.3.0 Try again later 2014-07-19 15:06:40 CLIENT -> SERVER: QUIT 2014-07-19 15:06:40 SERVER -> CLIENT: 221 2.0.0 Bye SMTP connect() failed.
                          Nur ist mir nicht ersichtlich, woran es nun genau hängt. Also, ich habe jetzt als Hostnamen bspw. domain.com eingetragen, diese ist im Plesk als vhost bzw. Domain eingetragen, die Domain leitet beim Aufruf aber auf einen völlig anderen Server. Die obige Ausgabe bestätigt aber, dass er oder es das richtig erkennt und versucht, auf dem neuen Server mit der IP 142.4.xxx einzuloggen.

                          Warum der übrigens auch 15:06 Uhr anstatt 17:06 Uhr anzeigt ist mir ein Rätsel. Im Plesk ist die Systemzeit korrekt eingestellt.

                          Danke.

                          Kommentar


                          • #14
                            und den fehler:
                            SMTP ERROR: AUTH command failed: 454
                            ich dachte ja es müsste "you must starttls before..." heissen.
                            und bitte mach mal das nächste mal zeilenumbrüche rein.

                            Kommentar


                            • #15
                              Wo soll ich denn da Zeilenumbrüche reinmachen? Das ist doch die Ausgabe die ich hier auch habe. Hab die doch nich rausgenommen.

                              Was sagt mir Deine Antwort nun? Wo liegt denn da der Fehler?

                              So wie ich sehe, wird versucht, sich am richtigen Server einzuloggen, dies schlägt aber fehl, obwohl meine eingetragenen Daten, Mailadresse sowie Passwort, stimmen. Habe extra eine Test-Mailbox dafür im Plesk erstellt.

                              Die Dienste-Übersicht im Plesk sagt u.a.:

                              ✔ SMTP-Server (Postfix)
                              ✔ Courier-POP3-Server
                              ✔ Courier-POP3-Server mit Unterstützung von SSL/TLS
                              ✔ Courier-IMAP-Server
                              ✔ Courier-IMAP-Server mit Unterstützung von SSL/TLS
                              ✔ Courier-IMAP-Authentifizierungsprogramm
                              ✔ Plesk Milter (Postfix)

                              Kommentar

                              Lädt...
                              X