Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

htaccess viele Rewriterules - zu groß?

Mehrere Domains, Domain-Umzug, neue Dateinamen, 301/302
Neues Thema Antworten
silent321
PostRank 3
PostRank 3
Beiträge: 73
Registriert: 13.01.2009, 17:39

Beitrag von silent321 » 14.01.2009, 11:41

Hallo,

ich habe gerade ein wenig an meiner htaccess gebalstelt und habe das Gefühlt, dass diese verdammt groß ist.

Sie funktioniert einwandfrei, jedoch gibt es villeicht möglichkeiten sie zu kürzen.

Zieht eine solche htaccess viel Performance?
Habt ihr verbesserungsvorschläge?

Bin leider kein Experte in sachen Mod_rewrite.

Code: Alles auswählen

Options +FollowSymLinks
RewriteEngine On



#example.com wird zu www.example.com

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]



#.html?e wird zu /

RewriteCond %{QUERY_STRING} ^&?e$ 
RewriteRule ^(.*)\.html$ /$1/? [L,R=301]



#.html wird zu /

RewriteRule ^(.*).html$ /$1/ [R=301]



#Bilder nur auf Google oder example.com erlaubt

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?example\.com(/.*)?$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www\.)?google\.de(/.*)?$ [NC]
RewriteRule \.(gif|jpg|png)$ - [F]



# registrieren bzw index.php ausgeblendet

RewriteRule ^registrieren/(.*)$ index.php?r%{QUERY_STRING} [L]
RewriteRule ^(.*)index.php$ /$1 [L,R=301]



#Forum

RewriteRule ^forum/([0-9]+)/[\w-_]*/([0-9]+)(.*)$ board.php?boardid=$1&seite=$2&%{QUERY_STRING} [L]
RewriteRule ^forum/([0-9]+)/[\w-_]*(.*)$ board.php?boardid=$1&%{QUERY_STRING} [L]
RewriteRule ^forum/(.*)$ main.php?%{QUERY_STRING} [L]


#letzer Beitrag

RewriteRule ^beitrag-[\w-_]*-([0-9]+)(.*)$ thread.php?threadid=$1&extra=last&%{QUERY_STRING} [L]



#Thema

RewriteRule ^thema/([0-9]+)/[\w-_]*/([0-9]+)(.*)$ thread.php?threadid=$1&seite=$2&%{QUERY_STRING} [L]
RewriteRule ^thema/([0-9]+)/[^/]*(.*)$ thread.php?threadid=$1&%{QUERY_STRING} [L]



#Tools

RewriteRule ^tools/gruppen/neu(.*)$ umgebung.php?was=gruppen&a=n&%{QUERY_STRING} [L]
RewriteRule ^tools/gruppen/show/([0-9]+)/([0-9]+)/(.*)$ umgebung.php?was=gruppen&s=$1&gibseite=$2&%{QUERY_STRING} [L]
RewriteRule ^tools/gruppen/show/([0-9]+)(.*)$ umgebung.php?was=gruppen&s=$1&%{QUERY_STRING} [L]
RewriteRule ^tools/gruppen/([0-9]+)/(.*)$ umgebung.php?was=gruppen&seite=$1&%{QUERY_STRING} [L]
RewriteRule ^tools/gruppen(.*)$ umgebung.php?was=gruppen&%{QUERY_STRING} [L]
RewriteRule ^tools/liste(.*)$ umgebung.php?was=mit&%{QUERY_STRING} [L]
RewriteRule ^tools/karte(.*)$ umgebung.php?was=all&%{QUERY_STRING} [L]
RewriteRule ^tools/packliste/(.*)$ umgebung_tools.php?was=pack&%{QUERY_STRING} [L]
RewriteRule ^tools(.*)$ umgebung.php?%{QUERY_STRING} [L]
RewriteRule ^drucken/merkliste(.*)$ druck_merkliste.php?%{QUERY_STRING} [L]



#Mitglieder

RewriteRule ^mitglieder/(.*)/([0-9]+)/$ member.php?om=$1&seite=$2&%{QUERY_STRING} [L]
RewriteRule ^mitglieder/(.*)/$ member.php?om=$1&%{QUERY_STRING} [L]
RewriteRule ^member-([0-9]+)(.*)$ member.php?id=$1&was=profil&%{QUERY_STRING} [L]



#Nachrichten

RewriteRule ^nachrichten/neu(.*)$ pmgo.php?was=new&%{QUERY_STRING} [L]
RewriteRule ^nachrichten/loeschen/([0-9]+)(.*)$ pmgo.php?was=del&id=$1&%{QUERY_STRING} [L]
RewriteRule ^nachrichten/pmsloeschen(.*)$ pmgo.php?was=pmedit&%{QUERY_STRING} [L]
RewriteRule ^nachrichten/antworten/([0-9]+)(.*)$ pmgo.php?was=new&ans=$1&%{QUERY_STRING} [L]
RewriteRule ^nachrichten/senden/(.*)$ pmgo.php?was=new&wert=$1&%{QUERY_STRING} [L]
RewriteRule ^nachrichten/lesen/([0-9]+)/([0-9]+)(.*)$ pmgo.php?was=read&id=$1&ordnerid=$2&%{QUERY_STRING} [L]
RewriteRule ^nachrichten/([0-9]+)/$ pm.php?ordnerid=$1&%{QUERY_STRING} [L]



#Profil

RewriteRule ^email-aendern(.*)$ profil.php?was=email&%{QUERY_STRING} [L]
RewriteRule ^passwort-aendern(.*)$ profil.php?was=pw&%{QUERY_STRING} [L]
RewriteRule ^heimatort-lokalisieren(.*)$ profil.php?was=hll [L]
RewriteRule ^gastort-lokalisieren(.*)$ profil.php?was=gll [L]
RewriteRule ^signatur-erstellen(.*)$ profil.php?was=sig&%{QUERY_STRING} [L]
RewriteRule ^profil/$ profil.php?%{QUERY_STRING} [L]



#Suche

RewriteRule ^suche/suchergebnis/([0-9]+)/(.*)$ search.php?was=suche&seite=$1&%{QUERY_STRING} [L]
RewriteRule ^suche/suchergebnis(.*)$ search.php?was=suche&%{QUERY_STRING} [L]
RewriteRule ^suche(.*)$ search.php?%{QUERY_STRING} [L]



#Sonstiges

RewriteRule ^partner/(.*)$ partner.php?%{QUERY_STRING} [L]
RewriteRule ^impressum/(.*)$ impressum.php?%{QUERY_STRING} [L]
RewriteRule ^kontakt/(.*)$ kontakt.php?%{QUERY_STRING} [L]
RewriteRule ^datenschutz/(.*)$ datenschutz.php?%{QUERY_STRING} [L]
RewriteRule ^agb/(.*)$ agb.php?%{QUERY_STRING} [L]
RewriteRule ^mediadaten/(.*)$ media.php?%{QUERY_STRING} [L]
Viele Grüße