PHP8 - Mailversand

  • Affected Version
    WoltLab Suite 5.3
    Affected App
    WoltLab Suite Core

    Hallo,

    Ja ich weiß PHP8 wird noch nicht offiziell unterstützt aber es scheint ein Konflikt mit PHP8 und dem Woltlab Mailer zu geben:

    RE: PHP 8 - Bereits unterstützt? (hier abwärts)

    Sobald ich zurück auf PHP 7.4.13 switche kommen die Mails wieder normal an.

    Es wurde nichts am System geändert außer auf PHP8 geupdated.

    Ubuntu 20.04 / NGINX / Mailversand über SMTP

    PS. Hier gehe hier wirklich von einem Konflikt seitens der Forensoftware aus, eigene Scripte über PhpMailer versenden normal und kommen auch an.

    EDIT: Mein FPM Pool falls es hierdran liegen sollte:

    EDIT: Komisch es scheint an meinem POOL oder so zu liegen, hab es jetzt aus der VM raus probiert, dort funktioniert alles sofort :/

    Weiß aber nicht was dort jetzt anders sein soll :/ Alles gleich

    ┌П┐(◉_◉)┌П┐

    Edited 3 times, last by TeRRible__KHONS (December 15, 2020 at 10:48 PM).

  • Also hab mir jetzt nochmals alles genau angeschaut und bin echt ratlos wieso es nicht geht :(

    Auf der VM läufts, in Produktion nicht, irgendwo muss der haken sein aber wo ? :/

    Hab nirgendwo eine Fehlermeldung oder sonst irgendwas? :(

    ┌П┐(◉_◉)┌П┐

  • Also in meiner Testseite unter PHP 8 läuft der Mailversand problemlos ab.

    Greetz

    Dark

    Mit dem Ende naht der Anfang mit etwas Neuen, um dann wieder zu sagen „Nach dem Update ist vor dem Update“. :S

  • Jap bei mir auch aber nicht im Produktivsystem, warum auch immer keine Ahnung :(

    Sehe nicht warum, keine Fehlermeldung nix... nirgendwo

    Switche ich auf 7.4.13 wieder funktionierts wieder

    ┌П┐(◉_◉)┌П┐

  • Leider nein, das Template von 5.3 (original) was ich minimal per CSS angepasst habe, hier sollte es keine Probleme geben.

    Komisch ist es dass es nirgendwo Logs gibs und sobald ich 7.4.13 reaktivieren geht alles normal raus, sogar die mails gehen dann ab und zu raus die unter 8.0.0 im Kontaktformular "abgesendet" wurden.

    Als würden die Mails und php8 gar nicht abgearbeitet werden.

    Vielleicht ist das Problem gar nicht im mailer sondern irgendwo wo die Mails verarbeitet werden. Mailserver funktioniert jedoch ohne Probleme auch hier keine Fehlermeldung, wieso auch kommt da erst gar nicht an.

    Nochmals zur Übersicht und Vorgehensweise:

    - Ubuntu 20.04 / nginx / php8.0.0 / fpm

    - Ich habe die nötigen Pakete für php8 installiert, ein Pool angelegt mit der GLEICHEN CONFIG wie bei 7.4.13, in nginx den 8er pool eingetragen, beide Dienste neugestartet (alles ohne Fehlermeldung, im ACP wird korrekt 8.0.0 angezeigt).

    - Alles funktioniert ohne Probleme nur eben das seltsame Problem mit dem Mailversand ohne irgendwelche errors irgendwo.

    ┌П┐(◉_◉)┌П┐

  • TeRRible__KHONS ich bin nicht dein persönlicher Mailsupport ;)

    Sicher, dass du nicht irgendwelche Funktionen versehentlich deaktiviert hast?

    Soweit ich mich erinnere, hattest du paar PHP Funktionen irgendwann mal deaktiviert.

    Und wie gesagt, das Problem wird bei dir und nicht bei PHP8 liegen. Bei mir läuft es ja auch ohne murren.

    „If you can only do one thing, hone it to perfection. Hone it to the utmost limit!“ – Zenitsu Agatsuma

  • Sicher, dass du nicht irgendwelche Funktionen versehentlich deaktiviert hast?

    Soweit ich mich erinnere, hattest du paar PHP Funktionen irgendwann mal deaktiviert.

    Hab nur das deaktiviert was unter den disable_functions steht, sonst ist alles Standart, die php8 Konfiguration ist minimalistisch und alles soweit Standart ausser die paar Einstellungen im Pool.

    Selbst wenn ich die Standart Einstellung von fpm-pool nehme funktioniert es nicht. Also liegt wahrscheinlich nicht an den pool Einstellungen.

    Wie gesagt ist alles 1-zu-1 wie auf dem Test-Server, ich weiß auch nicht was hier kaputt ist, zumals ich nirgendwo Fehlermeldung oder logs sehe, auch nicht auf dem Mail-Server.

    ┌П┐(◉_◉)┌П┐

  • Was genau steht denn in disable_functions drin

    Code
    ; CUSTOM
    php_admin_value[max_execution_time] = 150
    php_admin_value[max_input_time] = 150
    php_admin_value[post_max_size] = 101M
    php_admin_value[upload_max_filesize] = 100M
    php_admin_value[memory_limit] = 256M
    php_admin_value[date.timezone] = Europe/Berlin
    php_admin_value[expose_php] = off
    php_admin_value[max_file_uploads] = 50
    php_admin_value[disable_functions] = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,mail,opcache_get_status

    Gibt es Einträge im PHP-Fehlerprotokoll

    Leider überhaupt nicht, weder im PHP-Fehlerprotokoll noch im ACP oder nginx, finde nirgendwo irgendwas, es gibt auch keine Fehlermeldung im frontend, alles wie normal nur eben dass die Mails in Wirklichkeit nicht abgesendet werden.

    Läuft die Systemüberprüfung in der Administrationsoberfläche abseits der PHP-Version durch

    Hier ist alles auf grün, nur eben die php Version wird auf rot gekennzeichnet aber wie ich gelesen hatte ich das normal da dies noch nicht offiziell verbaut wurde auf korrekte Überprüfung 😢

    Bin echt ratlos und kein plan wo ansetzen, wieso das nicht funzt.

    ┌П┐(◉_◉)┌П┐

  • Hallo,

    Leider nein, das Template von 5.3 (original) was ich minimal per CSS angepasst habe, hier sollte es keine Probleme geben.

    Du meinst „Ja“ und nicht „Nein“.

    Komisch ist es dass es nirgendwo Logs gibs und sobald ich 7.4.13 reaktivieren geht alles normal raus, sogar die mails gehen dann ab und zu raus die unter 8.0.0 im Kontaktformular "abgesendet" wurden.

    Das bedeutet, dass die E-Mails noch in der Queue hängen. Ich tippe darauf, dass aufgrund des geänderten E-Mail-Templates eine Exception auftritt und die E-Mail daher in der Queue verbleibt. Geloggt wird erst dann, wenn der Versand endgültig fehlgeschlagen ist (oder alternativ bei jedem Versuch sofern der Debug-Modus aktiv ist).

  • Tim Düsterhus December 16, 2020 at 11:23 AM

    Added the Label Not a bug
  • Das bedeutet, dass die E-Mails noch in der Queue hängen. Ich tippe darauf, dass aufgrund des geänderten E-Mail-Templates eine Exception auftritt und die E-Mail daher in der Queue verbleibt. Geloggt wird erst dann, wenn der Versand endgültig fehlgeschlagen ist (oder alternativ bei jedem Versuch sofern der Debug-Modus aktiv ist).

    Die Queue ist dannach leer auch in der Datenbank steht nichts drin.

    Hier das email-template, vielleicht liegt an einer meiner änderungen die unter php8 nicht laufen? (Die änderungen hier sind aber minimal kann mir nicht vorstellen dass es hier probleme gibt):

    ┌П┐(◉_◉)┌П┐

  • Hallo,

    Die Queue ist dannach leer auch in der Datenbank steht nichts drin.

    Das kann nicht sein.

    Hier das html-template, vielleicht liegt an einer meiner änderungen die unter php8 nicht laufen? (Die änderungen hier sind aber minimal kann mir nicht vorstellen dass es hier probleme gibt):

    Hast du es denn mal mit dem Standard-Template probiert? Ich sehe, dass mindestens dieser Patch fehlt: https://github.com/WoltLab/WCF/co…259cc5d09ceb344

    Die Verwendung von Media-Queries in E-Mails ist nebenbei etwas fragwürdig. Das unterstützt praktisch kein MUA.

  • Das kann nicht sein.

    Ist aber so, sobald ich nach dem Absenden https://domain.tld/background-queue-perform aufrufe steht immer auf 0.

    Hast du es denn mal mit dem Standard-Template probiert?

    Das werde ich gleich nachher probieren und nochmals berichten.

    Ich sehe, dass mindestens dieser Patch fehlt: https://github.com/WoltLab/WCF/co…259cc5d09ceb344

    Dieser Patch ist aber auch nur minimalistisch kann mir nicht vorstellen dass es hierdran liegen sollte aber ich werde es einfach mal mit dem Standart-Template versuchen.

    ┌П┐(◉_◉)┌П┐

  • Tim Düsterhus und alle anderen, danke für eure Hilfe wie es scheint liegt es doch an meinem email-template, nachdem ich das auf standart gesetzt habe funktioniert der Versand einwandfrei.

    ich werde dann jetzt nur die wichtigsten Farben sachen anpassen und den Rest beim Standart lassen.

    Nochmals Danke an alle!!

    ┌П┐(◉_◉)┌П┐

  • Jetzt ist das halbe Dutzend voll, jetzt muss es raus: Es heißt Standard und nicht Standart. 😖

    Die Verwendung von Media-Queries in E-Mails ist nebenbei etwas fragwürdig.

    Da würde ich so pauschal nicht mitgehen. Primär geht es bei Media Queries ja um Anpassungen für mobile Clients und die meisten mobilen E-Mail-Clients unterstützen Media Queries. Das sind dann so Exoten wie eine AOL-App, die das nicht können, oder der eine oder andere Webmailer - aber nutzt jemand am Smartphone einen Webmailer? Die Frage muss ich ernsthaft stellen, dazu fehlen mir Zahlen. Aber ich kann's mir nicht vorstellen und ich habe in den ca. drei Jahren, die ich Newsletter-Templates für diverse Kunden erstelle, noch nicht ein einziges Feedback erhalten, welches auf die Verwendung von Media Queries zurückzuführen ist. Die Standard-Vorlagen, die beispielsweise Cleverreach anbietet, setzen ebenfalls Media Queries ein.

  • So wurde gefixt und angepasst sodass es auch unter php8 läuft, bin jetzt näher am original geblieben, nur etwas die Farben angepasst und Header background-Image.

    Was mich jetzt interessieren würde wäre was da drin war dass es unter 7.4 lief und unter 8.0 nicht. Ist zwar jetzt geklärt aber interessieren würde es mich trotzdem 😊

    Und nochmals danke an alle Beteiligten die kunstruktiv geholfen haben und mich Nervensäge ertragen mussten 🙈😅

    ┌П┐(◉_◉)┌П┐

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!