php.ini Problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • php.ini Problem

    Vor einigen Tagen hat mein Webhoster ein Update gemacht, und mich darauf aufmerksam gemacht, dass evtl. php.ini Einstellungen verändert wurden.
    Bis vor dem Update waren die Einstellungen ok, und genau so wie ich sie brauchte. Nun sind einige Einstellungen anders, ua. ist nun register_globals auf on, was ich gar nicht gebrauchen kann und auch nicht sinnvoll ist.

    Laut Support von meinem Hoster soll es möglich sein, eine eigene php.ini zu definieren, welche ins Root Verzeichnis des Servers muss. Da diese zusätzlichen Einstellungen einer eigenen .ini nur für ein Verzeichnis gelten, muss man zusätzlich zur ini eine .htaccess Datei (mit einem vorgegebenen Pfad) ins Rootverzeichnis packen. Somit sollte der Server ohne weiteres global die neuen ini Einstellungen übernehmen.


    Mein Problem: Er tut es nicht. Nach einer Kontrolle mit phpinfo() sind noch alle Einstellungen beim Alten. Ich habe auch schon probiert, die php.ini für einige Ordner zu erstellen (also ohne htaccess Datei) und dann die betreffenden Order wieder mit phpinfo() kontrolliert --> wieder Fehlanzeige
    Zu guter letzt habe ich zu der Funktion ini_set() gegriffen, was aber auch nicht funktioniert.
    Zuerst dachte ich, dass es ein weilchen dauert, bis der Server meine neue ini nimmt, nun sind es aber schon mehr als 3 Tage ohne dass sich etwas geändert hat.


    Laut meines Hosters ist es in PHP 5 (ich benutze PHP 5.1.1) nicht mehr möglich alle Einstellungen mit einer 2ten ini zu ändern. Daraufhin habe ich in der Manual nachgelesen, und register_globals kann man sehr wohl konfigurieren.

    Mein Hoster hat keine Lösung für mein Problem. Vielleicht ja einer von euch.
    Den mein register_globals = on stört micht ziemlich.....

  • #2
    ini_set funktioniert nicht, weil zu dem Zeitpunkt, wo der Befehl ausgeführt wird, die entsprechenden Variablen schon längst registriert sind.
    Diese "2. php.ini-Datei"-Lösung hab ich schon mal im Zusammenhang mit Strato gehört... war mir damals schon sehr suspekt und solange mir niemand einen Gegenbeweis im Manual verlinkt, bin ich der Ansicht, dass das nicht geht.

    Man kann mit
    php_value
    bzw.
    php_flag
    in der .htaccess-Datei Konfig-Variablen verändern, so mache ich es z.B. bei all-inkl - funktioniert.

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Würde dass dann in etwas so aussehen?

      #access start

      php_value register_globals = off

      #weitere Einstellungen


      #access ende

      Kommentar


      • #4
        Manual hilft.
        Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

        Kommentar


        • #5
          Habe ich gelesen.
          Haber nur etwas zu voreilig gepostet.

          Was mich noch verwirrt ist, dass man php_value nicht auf boolesche Werte anwenden sollte und statt dessen php_flag.
          Aber ein booleschier Wert ist meines Wissens nach true/false oder 1/0 und nich on und off.

          Nun steht aber in der Manual:
          PHP-Code:
          php_flag Name on|off 
          Setzt eine boolesche Konfigurationsdirektive
          Kann nur für Direktiven mit den Typen PHP_INI_ALL und PHP_INI_PERDIR verwendet werden

          Für meine register_globals Direktive müsste ich also in meiner .access Datei folgendes notieren:
          PHP-Code:
          php_value register_globals off 
          Ich habe es auch schon
          php_flag register_globals off
          probiert.

          Nach der Kontrolle mit phpinfo() ist register_globals noch immer auf on.

          Ich werd dann wohl meinen Hoster benachrichtigen, das er für mich die Änderungen machen soll.

          Aber mich würde nur interessieren, warum das nicht hinhaut.

          Kommentar

          Lädt...
          X