Sebastian: SSI Browserweiche

Guten Tag,

ich habe das Problem, dass meine Browserweiche nicht funktioniert.
folgendes habe ich ausprobiert:

<!--#if expr="$HTTP_USER_AGENT = /Mozilla/" -->
<!--#include virtual...-->
<!--#else-->
<!--#include...-->
<!--#endif-->

die Include Anweisungen funktionieren, nur If und Else schreibt er einfach in den Quelltext.

Hab es dann noch so ausprobiert: "{HTTP_USER_AGENT}...
aber das tut auch nicht.

das ganze läuft unter einem Windows Server(ja ich weiß selber schuld :-) )

Weiß jemand was ich da falsch mache oder ob es noch eine andere Möglichkeit mit SSI gibt?

Hier mal eine Datei wie das dann rauskommt:
(oben ist noch ein echo var=.. drin.
http://www.bandvip.de/Test.shtml

Danke schon mal.

Gruß
Sebastian

  1. Moin!

    ich habe das Problem, dass meine Browserweiche nicht funktioniert.

    Serverseitig realisierte Browserweichen sind immer böse. Vermeide sie, wo es nur geht.

    Welches Problem soll deine Browserweiche denn lösen?

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
  2. Hallo Sebastian,

    <!--#else-->

    wohl eher "elif", vielleicht hilft dir das hier:
    Browserweichen SSI

    Grüsse

    Cyx23

    1. <!--#else-->

      wohl eher "elif", vielleicht hilft dir das hier:
      Browserweichen SSI

      Grüsse

      Cyx23

      mh hab jetzt einfach mal den kompletten Text so da raus kopiert wie er auf der Seite angegeben ist, er zeigt zwar nicht das was er für den Browser anzeigen soll, aber das letzte else.
      http://www.bandvip.de/Test.shtml

      Serverseitig realisierte Browserweichen sind immer böse. Vermeide sie, wo es nur geht.

      Welches Problem soll deine Browserweiche denn lösen?

      Ich wollte den 7er IE und den aktuellen FF abfragen, und dann eine Seite für den Rest(gerade für die alten IE)
      Welche Möglichkeit habe ich denn, die besser ist?

  3. Hi,

    <!--#if expr="$HTTP_USER_AGENT = /Mozilla/" -->
    Hab es dann noch so ausprobiert: "{HTTP_USER_AGENT}...

    Hast Du es auch mal korrekt (mit $, mit {}) probiert?

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Hi,

      <!--#if expr="$HTTP_USER_AGENT = /Mozilla/" -->
      Hab es dann noch so ausprobiert: "{HTTP_USER_AGENT}...

      Hast Du es auch mal korrekt (mit $, mit {}) probiert?

      cu,
      Andreas

      Hi,
      so meinst du?:
      <!--#if expr="${HTTP_USER_AGENT} = /Mozilla/">

      ja habe ich, steht auch im Quelltext der Datei:
      http://www.bandvip.de/Test.shtml

      Gruß
      Sebastian

      1. Hi,

        so meinst du?:
        <!--#if expr="${HTTP_USER_AGENT} = /Mozilla/">

        Ja.

        http://www.bandvip.de/Test.shtml

        Dein Server meldet sich mit

        Microsoft-IIS/6.0
        ASP.NET

        in den Response-Headern.

        Ich bin mir nicht sicher, ob IIS überhaupt SSI kann und wenn ja, ob er dann auch die "neuen" (seit Apache 1.2) #if #elif #else #end Konstrukte kann.
        Da ich keinen IIS zur Verfügung habe(n will), kann ich's nicht überprüfen.

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        O o ostern ...
        Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
      2. Hi,

        Nachtrag:
        wie ich gerade sehe, hast Du

        <!--#if expr="${HTTP_USER_AGENT} = /Opera/">
          Opera
        <!--#elif expr="${HTTP_USER_AGENT} = /MSIE/">
          Internet Explorer
        <!--#elif expr="${HTTP_USER_AGENT} = /Mozilla/">
          Mozilla
        <!--#else -->
          Sonstige
        <!--#endif -->

        in der Seite stehen. Korrigiere die 3 Zeilen mit #if und #elif, so daß diese vollständige Kommentare sind.
        Klappt's dann?

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        O o ostern ...
        Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
        1. .... Korrigiere die 3 Zeilen mit #if und #elif, so dass diese vollständige Kommentare sind.

          Klappt's dann?

          Jetzt schreibt er wieder alles auf die Seite.

          http://www.bandvip.de/Test.shtml

          Dein Server meldet sich mit

          Microsoft-IIS/6.0
          ASP.NET

          in den Response-Headern.

          Ich bin mir nicht sicher, ob IIS überhaupt SSI kann und wenn ja, ob er dann auch die "neuen" (seit Apache 1.2) #if #elif #else #end Konstrukte kann.
          Da ich keinen IIS zur Verfügung habe(n will), kann ich's nicht überprüfen.

          Also include und andere SSI-Befehle funktionieren, nur diese doofen ifs nicht, kann ich das irgendwie herrausfinden?!

          Danke erst mal noch für die Hilfe

          Gruß
          Sebastian

          1. Hi,

            Ich bin mir nicht sicher, ob IIS überhaupt SSI kann und wenn ja, ob er dann auch die "neuen" (seit Apache 1.2) #if #elif #else #end Konstrukte kann.
            Da ich keinen IIS zur Verfügung habe(n will), kann ich's nicht überprüfen.
            Also include und andere SSI-Befehle funktionieren, nur diese doofen ifs nicht, kann ich das irgendwie herrausfinden?!

            Konsultiere das Handbuch zum IIS.

            Glaubt man http://msdn2.microsoft.com/en-us/library/ms525185.aspx, sieht's bezüglich #if ... beim IIS-SSI düster aus ...

            cu,
            Andreas

            --
            Warum nennt sich Andreas hier MudGuard?
            O o ostern ...
            Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.