Ankündigung

Einklappen
Keine Ankündigung bisher.

Varible PATH_INFO ist plötzlich leer

Einklappen

Neue Werbung 2019

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

  • Varible PATH_INFO ist plötzlich leer

    Hallo allerseits,
    ich bin Softwareentwickler mit einiger Berufserfahrung, aber neu im PHP Bereich unterwegs.

    Mein Script läuft eigenlich ohne Fehler durch. Nach einiger Zeit im Betrieb ist plötzlich in den PHP-Scripten die Variable $_SERVER[‚PATH_INFO‘] leer, sodass nachfolgend natürlich nichtsmehr funktioniert wie es soll.
    Alle Lösungsvorschläge im Internet laufen darauf heraus, das die Variable grundsätzlch nicht vorhanden oder leer ist. Bei mir jedoch tritt das im laufenden Betrieb auf. Wenn sie dann leer (NULL) ist bleibt sie das bei jedem Request auch bis zum Neustart des Servers. Danch läufts wieder rund. Was mich jetzt zur Konfiguration bringt.

    Verwendet werden:
    Apache 2.4.23
    PHP 7.0.9
    Windows Server

    Hat jemand von euch eine Idee in welche Richtung ich suchen soll. Evtl. ist es auch ein Konfigurationsefehler des Apache.

    Vielen Dank schon mal.



  • #2
    Klingt als wär am Server was kaputt. Was steht dazu in den Logs? Wenn es ein Konfigurationsfehler ist bekommst Du das an irgend einer Stelle "um die Ohren gehauen"

    Bei der superglobalen $_SERVER kommen diese Daten, wie der Name bereits vermuten läst, vom Server. Wenn der keine weitergibt steht da halt nix drin.

    Aber irgendwas wurde da mit hoher Wahrscheinlichkeit abgeschossen. Kann auch von einem Apache Modul stammen oder sonstwas. Keine Ahnung, schau in die Logs.

    Kommentar


    • #3
      Ja, so was in der Art dachte ich mir schon. Nur scheint es mir nach der Suche im Heuhaufen auszusehen ohne weitere anhaltspnkte zu haben. Ich habe gehofft jemand hatte schon mal so ein Problem.

      Kommentar


      • #4
        Was gefällt Dir an meinem Vorschlag nicht?

        Kommentar


        • #5
          Entschuldigung, ich habe nicht geschrieben dass mir Dein Vorschlag nicht gefällt. Da ich auch schon einige Logs durch habe konnte ich keinen Anhaltspunk finden der mit der Sache etwas zu tun hat. Ich hoffe halt, das jemand eine konkrete Idee hat weil er etwas ähnliches schon mal hatte. Dennoch vielen Dank für deine Hilfe.

          Kommentar


          • #6
            Zitat von udo71 Beitrag anzeigen
            Entschuldigung, ich habe nicht geschrieben dass mir Dein Vorschlag nicht gefällt.
            Das ist korrekt! Aber Du bist garnicht darauf eingegangen was für mich nur eine Schlussfolgerung zulies.

            Zitat von udo71 Beitrag anzeigen
            Da ich auch schon einige Logs durch habe
            Das hätteste mal besser gleich geschrieben!

            Zitat von udo71 Beitrag anzeigen
            Ich hoffe halt, das jemand eine konkrete Idee hat weil er etwas ähnliches schon mal hatte.
            Wir hatten sowas mal in der Firma. Da war es ein Hardware-Problem. Ich glaube ein RAM-Riegel war defekt. Aber bei überwachten Serversystemen bekommt man heute diese Info ja schon Add-Hook (Blade-Center z.B.) und der defekte RAM wird halt einfach nicht mehr genutzt.

            Aber bevor ich jetzt an der Hardware rumbastele würde ich erst mal schauen das alle beteiligten Software-Komponenten im System auf eine halbwegs aktuelle Version angehoben werden. PHP ist zu alt. Aktuell ist 7.2 Der 7.0er Zweige hat ziemlich viele Bugs, war ja schließlich der erste Minor Zweig in einer vollkommen umgestalteten Engine.

            Kommentar


            • #7
              Ich würde meine Anwendung nicht von der Existenz von $_SERVER["PATH_INFO"] abhängig machen, sondern nach einen plattformunabhängigen und sicheren Weg suchen diese Information zu erhalten.
              Anregungen z.B. hier in Portable and safe way to get PATH_INFO.

              Kommentar


              • #8
                Vielen Dank,
                das werde ich mir mal ansehen.

                Kommentar


                • #9
                  Da wir hier bei den fortgeschrittenen sind: wieso nutzt du keine fertige Request-Objekt Implementierung?
                  [SIZE="1"]Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript.[/SIZE]

                  Kommentar

                  Lädt...
                  X