Ankündigung

Einklappen
Keine Ankündigung bisher.

preg_match für Domain

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • preg_match für Domain

    Hi,

    ich versuche eine Header-Weiterleitung zu bauen, wenn im Domainnamen www. vorkommt.

    PHP-Code:
    if ( preg_match('/^(http|https):\/\/www./i'$_SERVER['SERVER_NAME']) ) 
    {
        echo 
    'OK.';

    Aber irgendwie bekomme ich keinen Treffer.
    Wo ist denn mein Fehler ?
    Maskiert ist doches korrekt.


  • #2
    Hi,
    versuch mal:
    PHP-Code:
    print_r($_SERVER); 

    Kommentar


    • #3
      Das www. halte ich für überflüssig bis falsch.
      PHP-Code:
      if ($var != 0) {
        
      $var 0;

      Kommentar


      • #4
        Zitat von BlackSpirit Beitrag anzeigen
        Hi,
        versuch mal:
        PHP-Code:
        print_r($_SERVER); 
        Bekomme ich eine menge ausgaben, wobei nur 'SERVER_NAME' für mich relavant ist. Dort ist der aufgerufene Domainname wiederzufinden.

        Das www. halte ich für überflüssig bis falsch.
        Warum ?
        Ich möchte beim aufruf von: http:\\www.***.de auf http:\\***.de umleiten.
        Hierfür suche ich den korrekten preg_match, was mir offensichtlich nicht gelingen will.

        Kommentar


        • #5
          Der Punkt hat eine Bedeutung in einem regulären Ausdruck!
          Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

          Kommentar


          • #6
            warum? Weil ich domains auch so schreiben kann: http: // google.de
            (Leerzeichen, damit die Forensoftware das nicht auflöst)
            PHP-Code:
            if ($var != 0) {
              
            $var 0;

            Kommentar


            • #7
              Zitat von lstegelitz Beitrag anzeigen
              Der Punkt hat eine Bedeutung in einem regulären Ausdruck!
              Stimmt. Habe diesen nun Maskiert = was auch kein Treffer erziehlt.
              Spaßighalber mal den Punkt komplett rausgenommen = leider auch kein Treffer.
              Der Punkt scheint also schon mal nicht der schuldige zu sein.

              PHP-Code:
              if ( preg_match('/^(http|https):\/\/www/i'$_SERVER['SERVER_NAME']) ) 

              if ( 
              preg_match('/^(http|https):\/\/www/./i'$_SERVER['SERVER_NAME']) ) 
              warum? Weil ich domains auch so schreiben kann: http: // google.de
              (Leerzeichen, damit die Forensoftware das nicht auflöst)
              Da es um SEO geht und nur eine Seite gelistet werden soll, ist das schon okay.
              Denn ich vermute mal nicht, das die Suchmaschinen solche (ungültigen) URL-Aufrufe absenden.

              Wenn das ein Besucher macht = okay. Die Seite darf er dann halt mit www aufrufen. Bei ein weiternavigieren würde dann die Regel wieder greifen.
              Fehler auf der Seite würde dieses Leerezeichen aber nicht verursachen.

              Kommentar


              • #8
                Ja, und nun? Soll nach dem www. Schluss sein oder was?

                NACH dem www. sollen ja noch beliebig viele Zeichen folgen dürfen, oder nicht? Also, ab damit in den Ausdruck...
                Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

                Kommentar


                • #9
                  Das Thema Pattern für URLs wurde bereits hinreichend behandelt. Bitte benutze die Forensuche und beachte diesen Thread!

                  [MOD: Thread geschlossen]
                  --

                  „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                  Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                  --

                  Kommentar

                  Lädt...
                  X