[mod_rewrite] Probleme

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

  • [mod_rewrite] Probleme

    Hi,

    ich versuche gerade mich in mod_rewrite einzuarbeiten und komme einfach nicht darauf, warum folgender code nicht funktioniert.

    Ich möchte gerne, dass URLs wie "my-domain.de/info" auf "my-domain.de/info.html" weitergeleitet werden.

    Also im Endeffekt jediglich ein .html anhängen. Ich habe es mit folgendem Code probiert, funktioniert aber nicht:

    Code:
    RewriteEngine On
    
    Options +FollowSymlinks
    RewriteBase /
    
    RewriteRule ^(.*)$ $1\.html [L]
    Zunächst erhalte ich beim Domainaufruf "my-domain.de" die Fehlermeldung:

    403 Forbidden
    You don't have permission to access /.html on this server.

    Das Problem ist also, dass eine Datei ".html" versucht wird aufzurufen. Wie kann ich die Bedingung stellen, dass die RewriteRule nur bei nicht-leerem "$1" gültig ist. Ich blicke bei der Notation der RewriteCond nicht durch.

    Wenn ich die URL "my-domain/info" aufrufe, bekomme ich die Fehlermeldung:
    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Ich gehe mal von einem Syntax-Fehler aus.

    Kann mir jemand erklären, wie ich mein Vorhaben realisieren kann?

    Vielen Dank,
    gen

  • #2
    Re: [mod_rewrite] Probleme

    Original geschrieben von gen
    Wie kann ich die Bedingung stellen, dass die RewriteRule nur bei nicht-leerem "$1" gültig ist.
    Du verwendest den Quantifier *, der bedeutet "beliebig viele, vielleicht auch kein Zeichen".
    Finde seinen Verwanden, der die Bedeutung "beliebig viele Zeichen, mindestens eins" hat.
    Ich blicke bei der Notation der RewriteCond nicht durch.
    Du brauchst auch keine RewriteCond, Anpassung des Musters in der RewriteRule reicht aus.
    Wenn ich die URL "my-domain/info" aufrufe, bekomme ich die Fehlermeldung:
    Internal Server Error
    Na ja, da wird er sich wohl intern totlaufen ...

    Du forderst /info an, wird zu /info.html
    Das geht in die nächste Rewriting-Runde, dein Muster passt auch auf /info.html, also wird /info.html.html draus.
    Das geht in die nächste Runde ...

    Passe also dein Muster entsprechend an - z.B. so, dass es auch einen Punkt im umzuschreibenden REQUEST_URI nicht akzeptiert.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Re: Re: [mod_rewrite] Probleme

      Original geschrieben von wahsaga
      [B]Du verwendest den Quantifier *, der bedeutet "beliebig viele, vielleicht auch kein Zeichen".
      Finde seinen Verwanden, der die Bedeutung "beliebig viele Zeichen, mindestens eins" hat.
      Vielen Dank!
      Stichwort Quantifier hat mir geholfen. Habe mein Vorhaben jetzt folgender Maßen gelöst:
      Code:
      RewriteEngine On
      Options +FollowSymlinks
      RewriteBase /
      
      RewriteRule ^([a-z]+)$ $1.html [L]
      Viele Grüße,
      gen

      Kommentar

      Lädt...
      X