Ergebnis 1 bis 9 von 9

Thema: Contao 4.13.12 und Host Europe mit PHP 8 (mal wieder...)

  1. #1
    Contao-Nutzer
    Registriert seit
    13.04.2020.
    Beiträge
    38

    Standard Contao 4.13.12 und Host Europe mit PHP 8 (mal wieder...)

    Hallo zusammen,

    ich habe ebenfalls einen Kunden bei HostEurope mit Config wie im Betreff. Ich habe so einige Forenartikel gelesen und einiges getestet - aber ich komme zu keinem guten Ergebnis. Daher hier nochmal zusammengefaßt, was ich gemacht habe:
    - Zuerst lief der Manager nicht mehr - konnte ich lösen durch Anlage der php.ini Datei im Manager-Verzeichnis.

    Jetzt lassen sich nach Umstellung auf PHP8 keine Erweiterungen mehr installieren. Was ich bisher getestet habe:

    - Die Datei vendor/contao/contao/manager-bundle/bin/contao-setup um die Zeile @ini_set('sys_temp_dir', '/is/htdocs/user_tmp/wp…'); erweitert. - Problem bleibt das gleiche.

    - Das Temp-Verzeichnis fest in der Datei /vendor/symfony/dependency-injection/Loader/XmlFileLoader.php (Zeile 684) verankert. Allerdings wird die Datei mit Composer-Install wieder auf das Original zurückgesetzt, so das meine Änderungen keine Auswirkungen haben. Warum ist das so ? Kann ich das zurücksetzten verhindern ?

    Getestet mit php-Script:
    Code:
    <?php 
    var_dump(sys_get_temp_dir());
    passthru('/usr/bin/php/7.4 -r \'var_dump(sys_get_temp_dir());\'');
    
    file_put_contents($path = sys_get_temp_dir()."/".uniqid(), "test");
    var_dump(file_get_contents($path));
    passthru('/usr/bin/php7.4 -r \'file_put_contents($path = sys_get_temp_dir()."/".uniqid(), "test"); var_dump(file_get_contents($path));\'');
    ?>
    Der schmeißt keinen Fehler. Ersetze ich die 7.4 durch 8.0, ist das Problem nachvollziehbar (ich nehme an, das ist die Ursache des Ganzen Übels?) : Failed to open stream: Permission denied in Command line code on line 1 bool(false)

    Jetzt meine Frage: Habe ich evtl. eine Möglichkeit bei der Masse der Einträge und Tipps übersehen ? Leider hat der Kunde den Vertrag bei HE gerade verlängert, so das ich noch ein bisschen damit leben muss. Es muss doch eine Möglichkeit geben, Contao den korrekten Pfad beizubiegen (auch wenn Contao am Ende wohl nichts dafür kann). Es kann doch nicht sein, das wegen eines blöden Systempfades die ganzen Internetauftritte zum erliegen kommen und umgezogen werden müssen.

    Danke und Grüße,
    der Falke.
    Geändert von falke2020 (08.02.2023 um 10:00 Uhr)

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Zitat Zitat von falke2020 Beitrag anzeigen
    Der schmeißt keinen Fehler. Ersetze ich die 7.4 durch 8.0, ist das Problem nachvollziehbar (ich nehme an, das ist die Ursache den Ganzen Übels?)
    Korrekt, die PHP 8 Umgebung von HostEurope ist kaputt und daher praktisch nicht benutzbar.
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.078
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von falke2020 Beitrag anzeigen
    Leider hat der Kunde den Vertrag bei HE gerade verlängert, so das ich noch ein bisschen damit leben muss.
    Ich würde es mal so formulieren: Leider hat der Kunde den Vertrag bei HE gerade verlängert, so das ich noch ein bisschen damit leben muss so dass er noch eine Weile dafür zahlen muss.

  4. #4
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.753
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von falke2020 Beitrag anzeigen
    Es kann doch nicht sein, das wegen eines blöden Systempfades die ganzen Internetauftritte zum erliegen kommen und umgezogen werden müssen.
    Doch das ist so. Langfristig auf jeden Fall. Die Lösung von @Spooky, die ich zu Letzt hier gelesen habe, war ja auch nur eine Notlösung (weil nicht updatesicher) um sich etwas Zeit für den Umzug zu verschaffen.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  5. #5
    Contao-Nutzer
    Registriert seit
    13.04.2020.
    Beiträge
    38

    Standard

    Zitat Zitat von mlweb Beitrag anzeigen
    Die Lösung von @Spooky, die ich zu Letzt hier gelesen habe, war ja auch nur eine Notlösung (weil nicht updatesicher) um sich etwas Zeit für den Umzug zu verschaffen.
    Das würde mir ja erstmal reichen, um die Umgebung noch ein paar Monate warten zu können. Ich nehme an, das war die Lösung @init_set in der contao-setup ? Das hat bei mir leider keine Auswirkungen gezeigt. Gibt es sonst noch schmutzige Lösungen, den Pfad irgendwo zu hinterlegen ?

    Ich hatte gerade noch Kontakt zum HE-Support. Die nehmenn sich davon nichts an. Hier ein kurzer Auszug mit den wichtigsten Kernelementen:
    ***
    Warum bereitet die Nutzung von Contao unter PHP >7.4 bereits Probleme?
    Das Verhalten unserer WebServer und WebHostings sowie das Verhalten von PHP zwischen den Versionen 7.4 und 8.x hat sich nicht geändert. Jedoch versucht das vom Contao-Manager verwendete Framework "Symphony" seit der PHP-Version 8.0 in das sog. '/tmp Verzeichnis' zu schreiben. Dies ist auf unseren Classic-WebServer-Produkten grundsätzlich möglich, da dem WebServer alle benötigten Variablen zur Verfügung stehen. Contao macht dies über einen CLI-Aufruf (command-line-interface). Dort stehen die benötigten Variablen nicht ohne Weiteres zur Verfügung. Bei unseren günstigen WebHosting Paketen haben Sie diese Möglichkeit nicht, da sich hier viele Benutzer einen Server teilen und bestimmte Funktionen aus Sicherheits und Datenschutzgründen eingeschränkt werden müssen.

    Hier hilft nur das setzen des tem-Verzeichnis über das Script. Dies müsste dann z.B. so aussehen.
    putenv("TMPDIR=/is/htdocs/");
    Da aber eine Anpassung der .phar Datei für den Manager nicht möglich ist, müssen Sie sich ein sogenanntes Wrapper Script bauen welches den Conato Manager aufruft.

    Unsere Entwickler waren diesbezüglich schon mehrfach mit den Contao Entwicklern in Kontakt, da dies ja nicht neu ist und schon vorher falsch ins TMP Verzeichniss geschrieben wurde.
    ***

  6. #6
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.078
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Tja, da hilft halt nur noch die Flucht, bei soviel - wohl absichtlicher - Ignoranz seitens dieses ??? "Webhosters". Dazu zwingen, das Problem zuzugeben und zu beheben kann man sie nicht. Entweder sie wollen es nicht, oder sie können/dürfen es nicht. Contao besteht ja nicht darauf, irgendwas in das /tmp-Verzeichnis zu schreiben. HE besteht darauf, dass dieses Verzeichnis das temporäre Verzeichnis für PHP ist, deshalb schreibt Contao/Symfony eben da rein - oder versucht es wenigstens. Letztlich muss sich jeder PHP-Entwickler darauf verlassen können, dass das voreingestellte temporäre Verzeichnis auch beschreibbar ist. Ansonsten ist PHP falsch konfiguriert. Demnächst hat man dann wohl bei HE auf den Webspace auch keinen Schreibzugriff mehr. Weder per PHP noch per FTP. Dafür bekommt man dann aber auch unbegrenzten Webspace, "schreiben Sie, soviel Sie wollen - wenn Sie können." .

  7. #7
    Community-Moderatorin & Contao-Urgestein Avatar von mlweb
    Registriert seit
    10.07.2011.
    Beiträge
    6.753
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ich meinte genau den Beitrag von @Spooky https://community.contao.org/de/show...l=1#post564941

    Da ich aber zu den Glücklichen gehöre, die keine Kunden bei HE haben und alle Anfragen von Nicht-Kunden konsequent abgeblockt habe (außer sofortigem Domainumzug), kann ich aus der Praxis dazu nichts beitragen.
    Ich habe Dir mit meinen Hinweisen geholfen und Du möchtest Dich bedanken?
    Unterstütze bitte das Contao-Projekt (Button Links)
    Weitere Spendenmöglichkeiten
    ------------------------------------------------------------------------------------------------------
    Contao-Dokumentation: Contao-Handbuch und Contao-Entwickler-Doku
    Contao-Online-Video-Kurse: Contao Academy
    Funktionalität erweitern: Contao-Erweiterungen

    Für Dinge die man mit html5 und css3 lösen kann, braucht man kein javascript.




  8. #8
    Contao-Nutzer
    Registriert seit
    13.04.2020.
    Beiträge
    38

    Standard

    Zitat Zitat von mlweb Beitrag anzeigen
    Ich meinte genau den Beitrag von @Spooky https://community.contao.org/de/show...l=1#post564941
    ok, Danke, nochmal ganz in Ruhe getestet und hier die finale (temporäre, wohl nicht updatesichere) Lösung für alle, die erstmal das gleiche Problem haben:

    Falls der Manger nicht mehr läuft, eine php.ini im "/Contao-Manager/" Verzeichnis anlegen. Den TMP-Pfad findet man u. a. wie folgt heraus: HE-Kundencenter->Produktverwaltung->Webhosting->Konfigurieren ->Allgemeines->Allgemeine Informationen

    php.ini:
    Code:
    sys_temp_dir=/is/htdocs/user_tmp/wp00000000_XXXXXXXXXX/
    Wenn sich keine Erweiterungen mehr installieren lassen (ab HE PHP8), dann funktioniert der folgende Lösungsvorschlag von @Spooky:

    Die Datei "vendor/contao/contao/manager-bundle/bin/contao-setup" um folgenden PHP-Befehl erweitern (tmp-Verzeichnis natürlich durch das eigene ersetzten, wie in php.ini):
    Code:
    putenv("TMPDIR=/is/htdocs/user_tmp/wp00000000_XXXXXXXXX");
    - Dann über Systemwartung im Manager den Prod.-Cache erneuern und Composer-Cache leeren

    Damit kanns dann erstmal weitergehen, bis ein Umzug zu IONOS (oder wohin auch immer) ansteht.

    Danke und Grüße,
    der Falke

  9. #9
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.114
    Partner-ID
    10107

    Standard

    Update-Sicher (mehr oder weniger) kann man sich es auch machen, in dem man eine Kopie von contao-setup anlegt (bspw. im Root der Contao Installation, oder einem eigenen bin Unterordner), die Änderung dort macht und dann in der composer.json das post-update und post-install-cmd entsprechend anpasst. Etwaige Updates die in der originalen contao-setup Datei passieren bei eine Contao Update müsste man dann natürlich manuell nachziehen.
    » sponsor me via GitHub or PayPal or Revolut

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •