Roger: eigene php.ini?

moin!

ich hab letztens von einem kunden einen ftp-zugang bekommen. dort hab ich auch zugriff auf die php.ini datei gehabt. konnte in dieser werte verändern, die sofort per phpinfo() sichtbar wurden.
wie bitteschön kann denn sowas gehen? zum einen weiß ich, dass, wenn ich in der ini etwas verändere ich den server neu starten muss. zum anderen wundert es mich, es kann doch nicht für jeden user, der auf dem shared-server arbeitet eine eigene php-version installiert sein! wie wird denn so etwas realisiert?

gruß.
roger.

--
Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
  1. ich hab letztens von einem kunden einen ftp-zugang bekommen. dort hab ich auch zugriff auf die php.ini datei gehabt. konnte in dieser werte verändern, die sofort per phpinfo() sichtbar wurden.
    wie bitteschön kann denn sowas gehen?

    PHP wurde als CGI installiert, dass heißt, der PHP-Interpreter wird bei jedem Aufruf einer PHP-Seite extra als eigenständiges Programm vom Webserver gestartet.

    1. hallo,

      PHP wurde als CGI installiert, dass heißt, der PHP-Interpreter wird bei jedem Aufruf einer PHP-Seite extra als eigenständiges Programm vom Webserver gestartet.

      Das erklärt noch nicht, wieso die php.ini verändert werden kann, die ja normalerweise völlig außerhalb aller Serververzeichnisse liegt.

      Grüße aus Berlin

      Christoph S.

      1. moin!

        Das erklärt noch nicht, wieso die php.ini verändert werden kann, die ja normalerweise völlig außerhalb aller Serververzeichnisse liegt.

        eben eben.

        meine vermutungen gehen richtung php_admin_value. weiss aber nicht, ob ich da richtig liege... vielleicht gibts ja irgend ein kommando, was das hinbiegt.

        gruß.
        roger.

        --
        Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
      2. PHP wurde als CGI installiert

        Das erklärt noch nicht, wieso die php.ini verändert werden kann, die ja normalerweise völlig außerhalb aller Serververzeichnisse liegt.

        Ich empfehle einen Blick in die PHP-Anleitung, Einleitungsseite zur Konfiguration ("Runtime Configuration"), zweiter Absatz (bzw vierter und fünfter Satz der Seite). Das dort beschriebene Verfahren ist übrigens ganz und gar nichts Ungewöhnliches.

        1. hallo Hohlraum,

          Ich empfehle einen Blick in die PHP-Anleitung

          In welche? Davon gibt es _sehr_ viele ;-)

          Einleitungsseite zur Konfiguration ("Runtime Configuration")

          Du treibst dich lange genug im Forum umher, um wissen zu können, daß die Angabe von http://www.php.net/manual/de/configuration.php an dieser Stelle deines postings sehr erwünscht gewesen wäre.

          Grüße aus Berlin

          Christoph S.

          1. moin!

            Du treibst dich lange genug im Forum umher, um wissen zu können, daß die Angabe von http://www.php.net/manual/de/configuration.php an dieser Stelle deines postings sehr erwünscht gewesen wäre.

            hier ist zwar ne nette beschreibung über die handhabung zu finden, aber imho nix zu meinem problem... :(

            gruß.
            roger.

            --
            Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
  2. Hallo!

    ich hab letztens von einem kunden einen ftp-zugang bekommen. dort hab ich auch zugriff auf die php.ini datei gehabt. konnte in dieser werte verändern, die sofort per phpinfo() sichtbar wurden.
    wie bitteschön kann denn sowas gehen? zum einen weiß ich, dass, wenn ich in der ini etwas verändere ich den server neu starten muss. zum anderen wundert es mich, es kann doch nicht für jeden user, der auf dem shared-server arbeitet eine eigene php-version installiert sein! wie wird denn so etwas realisiert?

    Du kannst bei CGI eine php.ini in das Verzeichnis legen, in dem die Einstellungen gelten sollen. Diese Werte überschreiben die Standards aus der "normalen" php.ini und werden "Dank" CGI bei jedem Request neu geparst.  Allerdings weiß ich nicht wo das dokumentiert ist, ich weiß nur dass es geht ;-)
    Ich würde mal vermuten dass dies mit PHP_INI_SYSTEM Werten nicht geht.

    php_admin_value & Co. funktioniert nur bei mod_php, was bei keinem ordentlichem Provider für shared hosting verwendet werden sollte.

    Grüße
    Andreas

    PS: Wer eine entsprechende Dokumentation diesbezüglich findet möge mir bitte den Link verraten ;-)

    --
    SELFHTML Linkverzeichnis: http://aktuell.de.selfhtml.org/links/
    1. moin!

      Du kannst bei CGI eine php.ini in das Verzeichnis legen, in dem die Einstellungen gelten sollen. Diese Werte überschreiben die Standards aus der "normalen" php.ini und werden "Dank" CGI bei jedem Request neu geparst.  Allerdings weiß ich nicht wo das dokumentiert ist, ich weiß nur dass es geht ;-)

      stimmt! hab gerade nomma nachgeguckt :)
      der server läuft als cgi-modul.

      php_admin_value & Co. funktioniert nur bei mod_php, was bei keinem ordentlichem Provider für shared hosting verwendet werden sollte.

      huch, wieso das denn? was spricht denn gegen eine benutzung von mod_php?

      PS: Wer eine entsprechende Dokumentation diesbezüglich findet möge mir bitte den Link verraten ;-)

      mir auch :)

      gruß.
      roger.

      --
      Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
      1. Hallo!

        php_admin_value & Co. funktioniert nur bei mod_php, was bei keinem ordentlichem Provider für shared hosting verwendet werden sollte.

        huch, wieso das denn? was spricht denn gegen eine benutzung von mod_php?

        Es spricht dagagen, dass es bisher keinen zuverlässigen Mechanismus gibt, die Benutzer (Kunden) voreinander zu schützen. Mit CGI kann man es dagegen erreichen, dass PHP-Scripte unter einer individuellen User-ID ausgeführt werden (suexec, suphp...). Und nein, safe_mode ist keine Alternative, und das perchild bzw. metux MPM für Apache2 ist AFAIK noch nicht stabil genug.

        Grüße
        Andreas

        --
        SELFHTML Linkverzeichnis: http://aktuell.de.selfhtml.org/links/
        1. moin!

          Und nein, safe_mode ist keine Alternative, und das perchild bzw. metux MPM für Apache2 ist AFAIK noch nicht stabil genug.

          mit 2.1 wird alles besser ;)

          gruß.
          roger.

          --
          Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
    2. hallo Andreas,

      Wer eine entsprechende Dokumentation diesbezüglich findet möge mir bitte den Link verraten ;-)

      Das steht tatsächlich in http://www.php.net/manual/de/configuration.php. Allerdings ist es so unglücklich formuliert, daß man genau lesen muß.

      Grüße aus Berlin

      Christoph S.

      1. Hi Christoph!

        Wer eine entsprechende Dokumentation diesbezüglich findet möge mir bitte den Link verraten ;-)

        Das steht tatsächlich in http://www.php.net/manual/de/configuration.php. Allerdings ist es so unglücklich formuliert, daß man genau lesen muß.

        Meinst Du:

        The Apache web server changes the directory to root
        at startup causing PHP to attempt to read php.ini
        from the root filesystem if it exists

        ? Finde das dann wirklich unglücklich - oder mein Englisch ist noch schlechter als ich dachte ;-)

        Grüße
        Andreas

        --
        SELFHTML Feature Artikel: http://aktuell.de.selfhtml.org/artikel/
        1. hallo Andreas,

          Meinst Du:

          The Apache web server changes the directory to root
          at startup causing PHP to attempt to read php.ini
          from the root filesystem if it exists

          Nee. Ich meine: "The default location of php.ini is a compile time option (see the FAQ entry), but can be changed for the CGI and CLI version with the -c command line switch, see the chapter about using PHP from the command line. You can also use the environment variable PHPRC for an additional path to search for a php.ini file."

          Grüße aus Berlin

          Christoph S.

          1. Hallo!

            Nee. Ich meine: "The default location of php.ini is a compile time option (see the FAQ entry), but can be changed for the CGI and CLI version with the -c command line switch, see the chapter about using PHP from the command line. You can also use the environment variable PHPRC for an additional path to search for a php.ini file."

            Der Witz ist ja, dass es auch ohne -c  oder irgendeine Umgebungsvariable klappt. Du musst nichst machen, nur eine Datei mit dem Namen php.ini in das Verzeichnis packen in dem sie wirklich soll.

            Grüße
            Andreas

            --
            SELFHTML Tipps & Tricks: http://aktuell.de.selfhtml.org/tippstricks/
            1. moin!

              Der Witz ist ja, dass es auch ohne -c  oder irgendeine Umgebungsvariable klappt. Du musst nichst machen, nur eine Datei mit dem Namen php.ini in das Verzeichnis packen in dem sie wirklich soll.

              woher weiß dann der interpreter, dass er die ini aus verzeichnis xy lesen soll?

              gruß.
              roger.

              --
              Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de
              1. Hi!

                woher weiß dann der interpreter, dass er die ini aus verzeichnis xy lesen soll?

                Vermutlich genau so wie Apache merkt dass er eine .htaccess zu laden hat - er guckt nach ;-)

                Grüße
                Andreas

                --
                SELFHTML Tipps & Tricks: http://aktuell.de.selfhtml.org/tippstricks/
                1. moin!

                  Vermutlich genau so wie Apache merkt dass er eine .htaccess zu laden hat - er guckt nach ;-)

                  yop. genau. im standardverzeichnis, oder das was du ihm zu teilst.
                  nur wie machst du das, um zum eigentlichen problem der frage zurückzukommen...

                  gruß.
                  roger.

                  --
                  Dein eigenes Newslettersystem auf deiner Homepage: http://newsletter.maennchen1.de