March 13, 20215 yr Hallo an alle, habe nun PHP 8 mal installiert und wollte PHP 7.4 in verschiedenen Projekten vorerst weiternutzen. Vorgangsweise in Froxlor: PHP-FPM Versionen -> Neue PHP Version erstellen -> PHP7 - PHP7 - systemctl restart php-fpm7 - /etc/php/7/fpm/pool.d/dynamic PHP-Konfigurationen -> Neue PHP Konfiguration erstellen -> PHP 7 Konfiguration erstellt Domains -> und in der entsprechenden Domain die PHP7 Konfiguration zugewiesen Der Benutzer hat auch die entsprechenden Rechte zur Ausführung der beiden Konfigurationen bekommen im Bereich Kunden. Danach Cronjob ausgeführt. Im Ergebnis erhalte ich im Ordner /etc/php/conf.d das entsprechende Socket mit der 2-<<benutzername>>-<<domain>>.socket php-fpm und php-fpm7 sind gestartet Das Problem ist nun, dass die entsprechende Seite welche auf PHP7 laufen soll, weiter unter der Standardkonfiguration (PHP 8 ) läuft, das zeigt auch der Status von php-fpm über systemctl. Vielleicht hat der eine oder andere eine Idee, würde mich freuen. EDIT: Okay das erste Problem was ich erkenne ist, dass die socket-Dateien nicht in /etc/php/conf.d sondern in /etc/php7/conf.d liegen sollten.
March 13, 20215 yr 1) Den Konfigurationsordner musst du natürlich passend für die php-version einstellen, debian default: /etc/php/{version}/fpm/pool.d/ 2) Erlaube dem Kunden die neue Config 3) Weise den entsprechenden Domains die fpm config zu
March 13, 20215 yr Author Okay das hat mir schonmal geholfen, ich nutze aber ArchLinux und dort ist der Pfadaufbau etwas anders: PHP8 = /etc/php/php-fpm.d + /etc/php/conf.d PHP7 = /etc/php7/php-fpm.d + /etc/php7/conf.d Schaue ich mir nun eine Konfigurationsdatei in conf.d zu einer Webseite für welche PHP7 zugewiesen wurde an steht darin: listen = /etc/php/conf.d/2-xxxxx-php-fpm.socket Ich denke, dass dort genau mein Fehler liegt denn php-fpm7 gibt den Fehler aus: [ERROR] unable to bind listening socket for address '/etc/php/conf.d/2-xxxxxx.de-php-fpm.socket': Read-only file system (30) Hier müsste bei listen wohl eher /etc/php7/conf.d/... stehen.
March 13, 20215 yr Author Wieder ein Stück weiter, hab es zwar gelesen aber erst hat's geklickt. In "/usr/lib/systemd/system/php-fpm7.service" musste ich "ProtectSystem=full" auskommentieren, dann startete der php-fpm7.service schonmal. Die erste Webseite funktioniert nun schonmal mit PHP7. Wenn ich nun in den Domains die nächste Webseite auf die PHP7-Konfiguration setze und danach den Cronjob ausführe legt er zwar die Config-File an aber wechselt nicht zu php-fpm7.service, also der socket bleibt vorn mit "1-..." und wird nicht zu "2-...". Ich probiere mal weiter.
March 13, 20215 yr Poste doch Mal die configs und den vhost und ggfls logs...so kann man nur schwer helfen
March 13, 20215 yr Author Danke, es ist nun alles wie es soll. 😄 Musste den Pfad noch von "/etc/php7/conf.d" auf /etc/php7/php-fpm.d" ändern und schon funktioniert alles wunderbar, vielen Dank für die Hilfe. 👍
Archived
This topic is now archived and is closed to further replies.