Ebenfalls betroffen, gleiche Antwort des Host Europe Support, Workaround funktioniert
Hallo in die Runde,
nachdem ich seit gestern nach dem Auto-Update des Contao-Manager ebenfalls betroffen bin, habe ich durch Eure Tipps und den Workaround hier im Forum zumindest die Funktion herstellen können. Der Workaround funktioniert bei mir, mein Dank dafür an alle!
Ich hatte die Infos aus diesem Thread gleich zu Beginn bei der Support - Anfrage mitgeliefert (Fehlermeldung, Test-Script, Testergebnis, Ursache bei Verwendung von passthru).
Leider erhielt auch ich die gleiche Antwort des Host Europe Support. Da dies nicht mein Fachgebiet ist, fehlt mir hier leider die nötige Expertise, allerdings klingen die hier genannten Argumente von @spooky sehr plausibel und naheliegend.
Antwort des Host Europe Support:
Zitat:
Das Anliegen lässt sich leider nur über den Workaround lösen:
Bitte legen Sie eine php.ini Datei im Contao Manager-Verzeichnis mit folgendem Inhalt an:
PHP-Code:
sys_temp_dir=/is/htdocs/user_tmp/wpID_xy/
Bitte beachten Sie, dass sich der oben genannte Pfad auf auf das Temp Verzeichnis für Ihre Webhosting Basic Paket mit der ID bezieht und natürlich für andere Pakete entsprechend angepasst werden muss.
Das User Temp Verzeichnis wird im KIS unter folgendem Pfad angezeigt:
"Produktverwaltung - Webhosting - Konfigurieren - Allgemeines - Allgemeine Informationen"
Nach einem Neustarten des Managers sollte dieser wieder wie gewohnt funktionieren.
Leider ist unsere Konfiguration, bei den Shared Hosting Paketen keinen Zugriff auf das Temp Verzeichnis des Betriebssystems zu ermöglichen, schon allein aus
Datenschutzgründen unumgänglich. Andernfalls könnten dort abgelegten Daten von anderen Kunden eingesehen werden.
Liste der Anhänge anzeigen (Anzahl: 1)
Wenn ich ne "user.ini" benutze, kommt wieder der Hinweis:
Code:
PHP Kommandozeilen-Programm
Unable to write to the temporary system directory.
Der Contao-Manager bricht immer ab mit:
Code:
Notice: tempnam(): file created in the system's temporary directory in /is/htdocs/wpxxx_yyy/www/contaotest/contao4-13-php8-0/vendor/symfony/dependency-injection/Loader/XmlFileLoader.php on line 684
Fatal error: Uncaught ValueError: Path cannot be empty in /is/htdocs/wpxxx_yyy/www/contaotest/contao4-13-php8-0/vendor/symfony/dependency-injection/Loader/XmlFileLoader.php:692
Bin eher nicht so der PHP Mensch, aber könnte da nicht der Hund begraben liegen?
Ich hatte auch mal die PHP-Info Seite von Version 7 und 8 verglichen. Insgesamt 65 Unterschiede. Das meiste ist sicherlich zu ignorieren, aber wie gesagt: PHP ist nicht so zwingend meins ;-)
Grad noch mal rumprobiert: Egal, was ich in die php.ini reinschreibe...der sys_temp_path ändert sich nicht. Kann das ein Servercaching Problem sein?
Es scheint aber dennoch der richtige Wert bereits eingetragen zu sein:
Anhang 25461
Gibt es denn hier Hosteurope-Kunden, die das Problem nicht (mehr) haben?
Lösung, ohne HE zu kontaktieren
Legt Euch im /web Verzeichnis eine temp.php an und kopiert folgenden Inhalt rein:
PHP-Code:
<?php
// Create a temporary file in the temporary
// files directory using sys_get_temp_dir()
$temp_file = tempnam(sys_get_temp_dir(), 'Tux');
echo $temp_file;
?>
Dann ruft ihr die Datei im Browser auf.
Dort steht dann sowas in der Art:
/is/htdocs/user_tmp/wp12345678_KTPMS1UVKH/TuxRlIO94
Davon ist der letzte Teil nicht zu kopieren. Also nur:
/is/htdocs/user_tmp/wp12345678_KTPMS1UVKH
Dann geht ihr in das contao-manager Verzeichnis und legt eine php.ini an.
Dort schreibt Ihr dann dies rein:
PHP-Code:
open_basedir = none
sys_temp_dir = /is/htdocs/user_tmp/wp12345678_KTPMS1UVKH
allow_url_fopen = 1
Nun läuft der Contao Manager durch!
Liste der Anhänge anzeigen (Anzahl: 1)
Guten morgen zusammen
hab div. Paketgrössen bei HE, habs gestern auf einem der kleinen Pakete (web basic) gemacht und danach auf PHP 8.1.11 umgestellt, bei mir läufts, auf den grossen wie schon erwähnt gings eh.
Anhang 25952
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,
ich habe nach der Umstellung auf PHP 8.0 und dem Fix
Code:
open_basedir = none
sys_temp_dir=/is/htdocs/user_tmp/wpxxx
allow_url_fopen = 1
folgendes Problem:
Anhang 25959
Wenn ich dann "Reparatur ausführen" klicke, wird dieser Fehler geworfen:
Code:
$ /usr/bin/php8.0 -q -c /is/htdocs/wpxxx_xxx/www/xxx/manager1/web/contao-manager/php.ini -dmax_execution_time=0 -dmemory_limit=-1 -ddisplay_errors=0 -dallow_url_fopen=1 -ddisable_functions= -ddate.timezone=Europe/Berlin /is/htdocs/wpxxx_xxx/www/xxx.de/manager1/web/web/contao-manager.phar.php composer install --no-dev --no-progress --no-ansi --no-interaction --optimize-autoloader
The "contao-components/installer" plugin was skipped because it requires a Plugin API version ("^1.0") that does not match your Composer installation ("2.2.0"). You may need to run composer update with the "--no-plugins" option.
The "contao/manager-plugin" plugin was skipped because it requires a Plugin API version ("^1.1") that does not match your Composer installation ("2.2.0"). You may need to run composer update with the "--no-plugins" option.
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Your lock file does not contain a compatible set of packages. Please run composer update.
Problem 1
- contao-components/installer is locked to version 1.2.7 and an update of this package was not requested.
- contao-components/installer 1.2.7 requires composer-plugin-api ^1.0 -> found composer-plugin-api[2.2.0] but it does not match the constraint.
Problem 2
- contao/manager-plugin is locked to version 2.4.1 and an update of this package was not requested.
- contao/manager-plugin 2.4.1 requires composer-plugin-api ^1.1 -> found composer-plugin-api[2.2.0] but it does not match the constraint.
Problem 3
- lib-xsl is present at version 1.1.28.0 and cannot be modified by Composer
- Only one of these can be installed: lib-libxslt[1.1.32], lib-xsl[1.1.28.0]. lib-libxslt replaces lib-xsl and thus cannot coexist with it.
- lib-libxslt is present at version 1.1.32 and cannot be modified by Composer
# Process terminated with exit code 2
# Result: Misuse of shell builtins
Wäre super, wenn jemand weiterhelfen könne :(
Jetzt bin ich doch selbst auf die Lösung gekommen:
PHP Version von 8.0 zurück auf 7.4 gesetzt, Composer Update durchgeführt, jetzt läuft alles auf PHP 8.1 :)