Docroot unter Chroot FPM

logifech

Active Member
Hi,
habe folgendes evtl. Problem entdeckt, wenn ich Websites als Chroot-FPM anlege und unter dem Option Tab bei Apache Direktiven das Docroot ändere, wird diese Änderung nicht übernommen. Ist dies so gewollt oder nicht? Wie ich das sehe wird die Apache Direktive zwar in den vHost hinzugefügt aber das Docroot bleibt auf dem Standard stehen. System ist ein aktuelles Debian sowie ein aktuelles ISPconfig
 

Till

Administrator
Schau mal die ganze Datei an, nicht nur die ersten Zeilen. Das docroot soll nicht ersetzt werden sondern es wird unten ein zweites mal eingefügt und dies überschreibt das erste docroot dadurch. Du musst also die ganze Datei ansehen und nicht nur ein paar Zeilen. Findest Du 2 mal DocRoot im vhost, dann hat das ersetzen funktioniert.
 

logifech

Active Member
Sorry, meine natürlich das diese Zeile unten zum Schluss ohne Probleme angehangen wird. Daran liegt es nicht, denn sobald ich auf normales FPM ohne Chroot oder CGI zurück Switche klappt dies auch ohne Probleme.
 

logifech

Active Member
Also habe es nochmals ausprobiert, das geänderte DOC Root in den Apache Direktiven wird definitiv korrekt unter den bestehenden vHost angehangen. Nun habe ich das verhalten getestet mittels Chroot PHP-FPM und Non Chroot, beim Chroot-FPM funktioniert dies definitiv nicht ohne Chroot FPM wird das Docroot ganz normal auf das neue überschriebene geändert. Ich denke man muss bei der Chrootet FPM Pool Datei das eigentliche PHP Doc root auch nochmal extra anpassen.
 

Till

Administrator
Wie lautet denn Dein docroot, ist es kein unterordner des webseiten root, also /var/www/clientsX/webX/ ?
 

logifech

Active Member
also daran sollte es nicht liegen, wie gesagt hatte es mit und ohne chrooted FPM versucht. Und er macht das Problem nur mit Chrooted FPM…
 

Till

Administrator
Dann kannst Du chrooted PHP nicht nutzen, wenn Du das docroot verbiegst. Da das chroot dir auf /var/www/clients/clientX/webX liegen müsste, hätte ich gedacht dass es gehen sollte, aber wenn apache es nicht unterstützt, dann kannst Du das chrooting nicht aktivieren.
 

logifech

Active Member
hmm schade, kann man nicht ein extra Feld einfügen unter dem OptionTab wo man ggf. ein neues Docroot angeben kann welches dann auch das chroot dir in der Pool config anpasst? Also quasi Wenn im Feld Docroot etwas eingetragen wird z.B. "web/public" das er dies erkennt und das docroot ändert und sobald dies leer ist auf den Standard zurücksetzt? Quasi wie im Openbasedir?
 

logifech

Active Member
Der Vollständigkeit halber poste ich noch eben den error den ich erhalte.

Im Webbrowser erhalte ich
Code:
File not found.

Apache error.log
Code:
[Mon Jun 21 13:32:41.202419 2021] [proxy_fcgi:error] [pid 12415:tid 140089982813952] [client 66.249.64.191:52277] AH01071: Got error 'Primary script unknown'
[Mon Jun 21 13:34:13.420659 2021] [proxy_fcgi:error] [pid 12415:tid 140090326914816] [client 2003:e3:6f3c:a49:9ac:89ab:e4e5:6040:51722] AH01071: Got error 'Primary script unknown'
 

Anhänge

  • CWS vhost.txt
    8,2 KB · Aufrufe: 362
  • FPM CWS.txt
    761 Bytes · Aufrufe: 348

libelah

New Member
Ich habe scheinbar dasselbe Problem, bisher ohne dass ich eine Lösung finden konnte. Ebenfalls Debian, WebServer ist Apache.
Hast du @logifech eine Lösung finden können?

Dann kannst Du chrooted PHP nicht nutzen, wenn Du das docroot verbiegst. Da das chroot dir auf /var/www/clients/clientX/webX liegen müsste, hätte ich gedacht dass es gehen sollte, aber wenn apache es nicht unterstützt, dann kannst Du das chrooting nicht aktivieren.
Was genau unterstützt Apache denn hier nicht? Vlt kann man dazu etwas weiteres finden.

Ein eigenes Feld für den Docroot würde ich generell praktisch finden :)
 

Werbung

Top