lighttpd und virtuelle Hosts mit eigener php.ini

Damit für jeden virtuellen Host eine eigene php.ini genutzt wird, legen wir mit dem setenv-Modul die Umgebungsvairable PHPRC fest, die angibt, wo die php.ini liegt.

server.modules   += ( "mod_setenv" )

Nun fügen wir die setenv-Anweisung für die virtuellen Hosts hinzu:

$HTTP["host"] =~ "^www.example.com" {
	...
    setenv.add-environment = (
        "PHPRC" => "/etc/php5/cgi/php.example.com.ini"
    )
}

In dieser speziellen php.ini sollte man nun für jeden virtuellen Host den open_basedir-Pfad setzen, damit diese nicht untereinander auf die Verzeichnise schreiben können.

Quelle: http://www.jenkner.org/archive/2008/03/11/lighttpd-mit-php-und-cgi/

5 Kommentara zu “lighttpd und virtuelle Hosts mit eigener php.ini“

  1. Lukas2511 sagt:

    Hatte mich vergessen für diesen Eintrag zu bedanken ^^

    Einfach klasse das funzt problemlos auf meinem server.
    Ich kriege es nur nicht hin php für einzelne vhosts komplett abzuschalten, weisst du wie man das machen könnte ?

  2. kevin sagt:

    Du könntest es andersherum machen: Aktiviere bei dennen wo du php brauchst, fastcgi und bei den anderen nicht.

    server.modules += ( “mod_fastcgi” )

  3. Manu sagt:

    Kann es sein, dass dieses nur mit CGI funktioniert? Mit FastCGI ignoriert er den Eintrag.

  4. kevin sagt:

    Ich habe es mit FastCGI probiert und dort funktioniert es.
    Hatte es mit CGI noch nicht probiert!

  5. dirk sagt:

    das ist unnötig, du kannst die php.ini (oder aber auch andere php settings) direkt via php-cgi übergeben, ohne “mod_setenv”!!

    z.b.

    “bin-path” => “/usr/bin/php-cgi -d open_basedir=/var/www”"

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">