Jump to content
Froxlor Forum
  • 0

PHP-FPM, auto_prepend_file


Ragnos

Question

Posted

Hallo zusammen,

 

ich bereite derzeit ein Upgrade von 0.9.27-1 auf 0.9.32 vor.

 

Wir haben das Script von http://www.bot-trap.de im Einsatz, was an sich recht gut funktioniert. Es handelt sich um ein PHP-Script, welches an sich nur die Implementierung einer Black- & Whiteliste darstellt. Wenn sich das Script nicht sicher ist wird eine Mathematik-Aufgabe eingeblendet, erst danach wird der Content ausgeliefert. ?blicherweise wird das ganze mit require_once() in der jeweiligen PHP-Anwendung integriert. Um Bot-Trap auf allen Domains ohne ?nderungen an den eigentlichen PHP-Scripts auszuf?hren habe ich das ganze ?ber die php.ini, auto_prepend_file eingebunden.

 

Das alte Setup l?uft noch mit mod-php5. Das will ich im Zuge des Upgrades korrigieren und auf FPM wechseln, was ich auch schon am laufen habe. Allerdings gelingt es mir nicht mehr, dass Bot-Trap-Script einzubinden.

 

Meine Beobachtungen:

- Liegt das Bot-Trap-Script in einem regul?r nicht erreichbaren Ordner (z.b. /var/customers/webs/script.php) passiert schlicht garnichts, das Script wird ignoriert.

- Liegt das Bot-Trap-Script in einem Kunden-Ordner (/var/customers/webs/ragnos) l?uft das Script zwar f?r diesen einen Kunden, alle anderen vHosts liefern jedoch nurnoch about:blank aus. (Inkl. Froxlor vHost)

 

auto_prepend_file habe ich in /etc/php5/fpm/php.ini definiert.

 

Auf der einen Seite kann man ja froh sein dass PHP-Scripts von Kunde X nicht im vHost von Kunde Y ausgef?hrt wird, dennoch, weis einer wie man dass umsetzen k?nnte?

 

Verwendet wird ein aktuelles Debian Wheezy, entsprechend Apache2.2 und php5.4 mit FPM.

 

W?nsche vorab ein angenehmes Wochenende!

 

Gru?,

Ragnos

2 answers to this question

Recommended Posts

Posted

Hallo,

 

danke f?r die Antwort. An die abgeschalteten PHP-Errors hab ich tats?chlich nicht mehr gedacht. Der Fehler in der Log-Datei war allerdings auch nicht wirklich hilfreich:

[Mon Dec 08 02:45:17 2014] [error] [client 88.77.167.77] FastCGI: server "/var/www/php-fpm/froxlor.panel/froxlor.despe.de/6624.fpm.external" stderr: PHP message: PHP Fatal error:  Unknown: Failed opening required '/var/customers/webs/ragnos/page.restrictor.php' (include_path='.:/usr/share/php/:/usr/share/php5/') in Unknown on line 0

Das Problem war tats?chlich open_basedir. Das ist zwar nicht in der /etc/php5/fpm/php.ini definiert, sehr wohl jedoch in der Kundenkonfiguration. Allen gemein ist /usr/share/php/, dort habe ich das Bot-Trap-Skript jetzt liegen, funktioniert.

 

Danke f?r den Denkansto?!

Posted

Mit aktiviertem open_basedir wirst du das garnicht hinkriegen. Ohne ist aber doch gar kein problem, das script muss nur dem webserver-user geh?ren, denn der darf ja auch in die kunden-vhosts.

 

 

- Liegt das Bot-Trap-Script in einem regul?r nicht erreichbaren Ordner (z.b. /var/customers/webs/script.php) passiert schlicht garnichts, das Script wird ignoriert.

Wie lautet die Fehler-Meldung in der Log? Vielleicht muss man sich die einfach nur mal genauer anschauen, um zu erfahren WARUM es ignoriert wird!

 

- Liegt das Bot-Trap-Script in einem Kunden-Ordner (/var/customers/webs/ragnos) l?uft das Script zwar f?r diesen einen Kunden, alle anderen vHosts liefern jedoch nurnoch about:blank aus. (Inkl. Froxlor vHost)

Ein Webserver liefert kein about:blank aus...eine "wei?e Seite" deutet meist auf einen PHP-Fehler hin dessen Ausgabe unterdr?ckt wurde (php.ini o.A. Einstellung), ?berpr?fe die Logs...

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...