Andreas Korthaus: Warum kann getenv("SCRIPT_URI") nicht angezeigt werden?

Hallo!
Folgendes Script:

<?
if (strstr(getenv ("SCRIPT_URI"),'http')){
echo "http<br>";}
echo getenv ("SCRIPT_URI");
?>

es wird nicht angezeigt - warum???

Grüße
 Andreas

  1. echo getenv ("SCRIPT_URI");

    es wird nicht angezeigt - warum???

    Weil SCRIPT_URI nicht existiert? Ich kann hier bei mir zum Beispiel nur SCRIPT_FILENAME und SCRIPT_NAME finden, aber kein SCRIPT_URI. Meinst Du vielleicht REQUEST_URI?

    In solchen Fällen hilft immer ein Blick auf phpinfo() (der Tipp steht übrigens auch in der Anleitung zu getenv()).

    Grüße vom Mond,
      soenk.e

    1. Hi!
      Hm, ist lokal auf meinem PC(Win2K, Apache), warum sollte es das nicht geben?
      Grüße
      Andreas

      1. Hm, ist lokal auf meinem PC(Win2K, Apache), warum sollte es das nicht geben?

        Das weiß ich nicht, ich habe mir die Variablen nicht ausgesucht. Fakt ist, daß diese Variable weder unter Linux/Apache von PHP 4 zur Verfügung gestellt wird (zumindest hier und bei meinem Hoster), noch daß sie in der CGI-Spezifikation (http://hoohoo.ncsa.uiuc.edu/cgi/env.html) drin ist.

        Also nochmal: Schau Dir mit phpinfo() an, was an Variablen zur Verfügung steht und such Dir eine von denen aus, die da sind. Da wird sicherlich was bei sein, was Deinen Vorstellungen entspricht. Sag ich mal so ;
        )
        Wie kommst Du denn überhaupt auf SCRIPT_URI?

        Grüße vom Mond,
          soenk.e

        1. Wie kommst Du denn überhaupt auf SCRIPT_URI?

          eben über besagte phpinfo() meines Providers! Was ich lediglich will, ist die Domain, über die das Script aufgerufen wurde herauszubekommen!
          z.B. ob www.domain1.de oder www.domain23.de eingegeben wurde! Beide Domaisn werden auf das gleiche Verzeichnis gelenkt. Was würdest Du hier für eine Variable wählen?
          Grüße
           Andreas

          1. Wie kommst Du denn überhaupt auf SCRIPT_URI?
            eben über besagte phpinfo() meines Providers!

            Oha, öfter mal was neues.. Wenn phpinfo() sagt, SCRIPT_URI ist da, dann muß sie (auf diesem Server) da sein. Probier statt getenv $SCRIPT_URI.

            Was ich lediglich will, ist die Domain, über die das Script aufgerufen wurde herauszubekommen!

            Wie wär's mit $HTTP_HOST bzw. $HTTP_SERVER_VARS["HTTP_HOST"]? :)

            Gruß,
              soenk.e