Roger: php und die konfiguration (safe mode)

moin!

wenn im php-conigure (phpinfo) "--enable-safe-mode" angegeben ist, was bedeutet das konkret? Safe Mode an oder aus? ist das abhängig von den weiteren einstellungen, oder ist das die übergeordnete einstellung?

gruß.
roger.

--
ich widersprech mir immer selber.
aber das passiert mir gott sei dank nie.
  1. Hi Roger,

    wenn im php-conigure (phpinfo) "--enable-safe-mode" angegeben ist, was bedeutet das konkret? Safe Mode an oder aus? ist das abhängig von den weiteren einstellungen, oder ist das die übergeordnete einstellung?

    Wo liegt genau dein Problem? Verstehst du das englische Verb to enable nicht?
    Oder suchst du nach der Beschreibung der configure Option?

    MfG, Dennis.

    --
    Mein SelfCode: ie:{ fl:( br:> va:) ls:[ fo:) rl:( n4:# ss:) de:] js:| ch:{ sh:| mo:} zu:|
    Crypt::PasswdMD5 jetzt auch in PHP
    Der erste Schweizer ist entstanden, als ein Russe versucht hat holländisch zu sprechen. (Thomas Gottschalk)
    1. moin!

      Wo liegt genau dein Problem? Verstehst du das englische Verb to enable nicht?
      Oder suchst du nach der Beschreibung der configure Option?

      nein. ich bin der meinung, dass wenn --enable-safe-mode im configure angegeben wurde, dann ist es auch eingeschaltet. allerdings meint der provider eine kunden, bei dem es so ist, das der safe-mode ausgeschaltet ist, weil ja in der php.ini steht: safe_mode = Off
      was aber imho völlig irrelevant ist, da ja die configure-option angegeben ist.

      oder?

      gruß.
      roger.

      --
      ich widersprech mir immer selber.
      aber das passiert mir gott sei dank nie.
      1. echo $begrüßung;

        ich bin der meinung, dass wenn --enable-safe-mode im configure angegeben wurde, dann ist es auch eingeschaltet.

        Bitte lies noch einmal genauer, was zu dieser Option geschrieben steht:

        --enable-safe-mode

        Enable safe mode by default.

        Beachte dabei das "by default".

        Den normalen Defaultwert der Konfigurationsparameter, so auch den von safe_mode erfährst du
        im Anhang G. php.ini directives des PHP-Handbuchs, und der ist "0", also ausgeschaltet.

        Mit --enable-safe-mode beeinflusst du nur diesen Default-Wert.

        allerdings meint der provider eine kunden, bei dem es so ist, das der safe-mode ausgeschaltet ist, weil ja in der php.ini steht: safe_mode = Off

        Wenn du dann in der php.ini diesen Default-Wert wieder überschreibst bzw. das dort geschriebenen nicht unwirksam machst...

        was aber imho völlig irrelevant ist, da ja die configure-option angegeben ist.
        oder?

        Das was du suchst wäre ein "force-safe-mode", was es aber m.W. nicht gibt.

        Nach einer Konfigurationsänderung ist es immer ratsam nachzuschauen, ob sie auch wirkt. Dazu ist phpinfo() hilfreich.

        echo "$verabschiedung $name";

        1. moin!

          Beachte dabei das "by default".

          Den normalen Defaultwert der Konfigurationsparameter, so auch den von safe_mode erfährst du
          im Anhang G. php.ini directives des PHP-Handbuchs, und der ist "0", also ausgeschaltet.

          Mit --enable-safe-mode beeinflusst du nur diesen Default-Wert.

          danke, dass du dir die mühe mit den links gemacht hast. ich versuche das ganze zu verstehen, aber das von dir oben geschriebene wiederpsricht sich doch jetzt. wenn ich den default-wert beeinflusse, dann veränder ich ihn doch? vor allem: wozu der schalter --enable-safe-mode, wenn der safe-mode dann ja gar nicht eingeschaltet ist? den kann man doch auch so einfach über safe_mode = On einschalten. oder setzt dieser Schalter ein configure mit --enable-safe-mode vorraus?

          gruß.
          roger.

          --
          ich widersprech mir immer selber.
          aber das passiert mir gott sei dank nie.
          1. echo $begrüßung;

            wenn ich den default-wert beeinflusse, dann veränder ich ihn doch?

            Der Default-Wert ist der Wert für einen (Konfigurations-)Parameter, der hart kodiert im Programm steht und dann zur Anwendung kommt, wenn keine vom User gesetzte andere Einstellung gefunden wird.

            vor allem: wozu der schalter --enable-safe-mode, wenn der safe-mode dann ja gar nicht eingeschaltet ist?

            Ist er das wirklich nicht?

            Da der Safe-Mode eine PHP_INI_SYSTEM-Einstellung ist, lässt er sich nur in der systemglobalen php.ini oder der globalen Apache-Konfiguration ändern. Das heißt, Per-Verzeichnis-Konfiguration oder gar Änderungen aus Scripten können ihn nicht beeinflussen.

            Da du Rechte hast, das Ding zu kompilieren, wirst du sicher auch Rechte haben die globale Konfiguration anzupassen...

            den kann man doch auch so einfach über safe_mode = On einschalten. oder setzt dieser Schalter ein configure mit --enable-safe-mode vorraus?

            safe_mode schaltet einfach nur den Safe-Mode gezielt ein oder aus. Lass ihn weg, und dein --enable-safe-mode wird wirken.

            Dieser Schalter beeinflusst ja nur den Default-Wert. Es wurde nirgends zugesichert, dass er andere Konfigurationseinstellungen unterbindet.

            echo "$verabschiedung $name";

            1. moin!

              Der Default-Wert ist der Wert für einen (Konfigurations-)Parameter, der hart kodiert im Programm steht und dann zur Anwendung kommt, wenn keine vom User gesetzte andere Einstellung gefunden wird.
              safe_mode schaltet einfach nur den Safe-Mode gezielt ein oder aus. Lass ihn weg, und dein --enable-safe-mode wird wirken.

              heißt das, wenn "safe_mode = xxx" in der ini-fehlt, dann wird der safe-mode "enabled"?
              gibt phpinfo() den wert von safe_mode an, wenn er fehlt? oder gibt es gar eine fehlermeldung bei der compillierung?

              btw: ich komme nicht an diesen server ran und hab es auch nicht vor. mich interessiert es nur, wie die einstellungen funktionieren.

              danke für deine mühen (und geduld mit mir ;)

              gruß.
              roger.

              --
              ich widersprech mir immer selber.
              aber das passiert mir gott sei dank nie.
              1. echo $begrüßung;

                heißt das, wenn "safe_mode = xxx" in der ini-fehlt, dann wird der safe-mode "enabled"?

                Dann greift der Default-Wert, der normalerweise 0 (=off) ist und durch --enable-safe-mode zu 1 (=on) wird.

                gibt phpinfo() den wert von safe_mode an, wenn er fehlt? oder gibt es gar eine fehlermeldung bei der compillierung?

                phpinfo() gibt unter Local Value die Werte aus, die gerade (also zum Zeitpunkt des Aufrufs) aktuell sind. Dabei ist es egal, wie die zustande kamen: Default-Wert, php.ini, .htaccess, ini_set() und andere Möglichkeiten. Unter Master Value steht das, was durch Default-Wert voreingestellt oder per php.ini konfiguriert/überschrieben wurde.

                echo "$verabschiedung $name";