oneside Geschrieben 5. April 2006 Geschrieben 5. April 2006 Hallo Leute, ich habe mir für meinen Webspace eine Mod_Rrewrite Rule erstellt: RewriteEngine on RewriteBase /meineseite/ RewriteRule ^intern/(.*)/(.*)/ $1.php/?id=$2 RewriteRule ^intern/(.*)/(.*) $1.php/?id=$2 Demnach wird sowas: intern/profil.php?id=500 zu sowas: meinseite/intern/profil/500/ Jetzt möchte ich aber noch zusätzlich unterbinden, dass jemand einfach in dei Adresszeile: meineseite/intern/profil.php?id=500 schreiben kann und dann trotzdem auf die Seite kommt. Es sollte das ErrorDocument 404 angezeigt werden oder sowas in der Art. Wie kann ich das in der .htaccess abfangen? Danke -Oneside- Zitieren
geloescht_JesterDay Geschrieben 6. April 2006 Geschrieben 6. April 2006 Jetzt möchte ich aber noch zusätzlich unterbinden, dass jemand einfach in dei Adresszeile: meineseite/intern/profil.php?id=500 schreiben kann und dann trotzdem auf die Seite kommt. Es sollte das ErrorDocument 404 angezeigt werden oder sowas in der Art. Erstens solltes du eine RewriteCond für deine Regel machen und zweitens stimmt deine RegEx nich (IMHO). Also so ungefähr würde ich das machen: RewriteEngine on RewriteBase /meineseite/ RewriteCond ^intern/([a-zA-Z]*)/([0-9]*).* RewriteRule ^intern/([a-zA-Z]*)/([0-9]*).* $1.php/?id=$2 [L] Für den direkten Aufruf dann das: RewriteCond ^intern/[a-zA-Z]*.php\?id=[0-9]* RewriteRule (.*) (.*) [F,L] Das L bedeutet, dass das die letzte Rule ist und danach die weiteren nicht mehr ausgewertet werden, das F (kein Leerzeichen nach oder vor dem Komma!) liefert einen 403 Fehler zurück (Forbidden). Wenn deine seite fest profil.php heißt, kannst du das natürlich auch fest in die Condition schreiben. Das oben is nur eine Möglichkeit. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.