Ich habe meine php5-fpm
für die Bindung an einen Unix-Domain-Socket eingerichtet /var/run/php5-fpm
.
/etc/php5/fpm/pool.d/www.conf
listen = /var/run/php5-fpm/$pool.sock
Das Problem ist, dass das php5-fpm
Verzeichnis nicht automatisch erstellt wird . Wenn ich den Computer neu starte, ist das Verzeichnis weg.
Wie kann ich es beim Booten automatisch erstellen lassen? Oder gibt es eine andere Lösung für dieses Problem?
php5-fpm
) muss zuerst existieren.Antworten:
Wie Sie wahrscheinlich bereits festgestellt haben, ist / var / run von Natur aus kurzlebig. Überprüfen Sie das FHS auf weitere Informationen und andere Verzeichnisse.
Das Verzeichnis / var / run / php5-fpm muss vorhanden sein, bevor php-fpm versucht, es zu verwenden. Weder php-fpm noch das Init-Skript scheinen es zu erstellen, daher müssen Sie eingreifen.
Am einfachsten ist es, das Init-Skript zu optimieren, um das Verzeichnis auf eine für Ihre Umgebung sehr spezifische Weise zu erstellen. Der Nachteil ist, dass dadurch Gepäck hinzugefügt wird, das Sie in Ihrem "sysadmin toolkit" mitnehmen müssen.
Es gibt zwei weitere Optionen, die mehr involviert sind, aber dauerhafte Lösungen für Sie und andere darstellen:
Senden Sie einen Patch an den Quellcode von php-fpm , damit überprüft wird, ob das in den .conf-Dateien definierte Verzeichnis vorhanden ist. Dies erfordert Kenntnisse der C- und PHP-Prozesse für die Patch-Übermittlung .
Senden Sie einen Patch an das Init-System Ihrer Linux-Distribution, damit es dasselbe tut. Dies könnte einfacher sein (im Vergleich zur ersten Option) und erfordert wahrscheinlich Kenntnisse des Shell-Skripts und erneut der Prozesse Ihrer Distribution für die Patch-Übermittlung.
Sie können die Schnellkorrektur durchführen (Ihre Init-Skripte ändern) und fortfahren. Eine gute Übung wäre jedoch, eine der permanenten Optionen zu befolgen, damit andere davon profitieren können. Es ist einfach genug und könnte Sie dazu bringen, zu Open Source-Projekten beizutragen (wenn Sie es nicht bereits tun, entschuldigen Sie meine Unwissenheit).
quelle
Hey, da musst du das PHP-Verzeichnis im Ordner / run erstellen und dann PHP als root neu starten, wenn du php7.2 hast. Du musst $ sudo /etc/init.d/php7.2-fpm restart schreiben
und alles sollte wie erwartet funktionieren
quelle