Hallo,
ich hoffe, dass mir hier vielleicht jemand helfen kann bezüglich des Apache Mod-Rewrite-Modules.
zuerst einmal meine htaccess:
Code:
RewriteEngine On
RewriteBase /
RewriteRule ^mblog/seiten/(.*).html$ /index.php?i=mblog&seite=$1 [NC,L]
RewriteRule ^mblog/trackback/(.*).html$ /_mblog/trackback.php?id=$1 [NC,L]
RewriteRule ^mblog/tags/(.*)/seiten/(.*).html$ /index.php?i=mblog&tag=$1&seite=$2 [NC,L]
RewriteRule ^mblog/tags/(.*).html$ /index.php?i=mblog&tag=$1 [NC,L]
RewriteRule ^mblog/kategorien/(.*)_(.*)/seiten/(.*).html$ /index.php?i=mblog&kategorie=$1&seite=$3 [NC,L]
RewriteRule ^mblog/kategorien/(.*)_(.*).html$ /index.php?i=mblog&kategorie=$1 [NC,L]
RewriteRule ^mblog/kategorien/(.*).html$ /index.php?i=mblog&seite=$1 [NC,L]
RewriteRule ^mblog/(.*)/(.*).html#kommentare$ /index.php?i=mblog&eintrag=$1#kommentare [NC,L]
RewriteRule ^mblog/(.*)/(.*).html#trackbacks$ /index.php?i=mblog&eintrag=$1#trackbacks [NC,L]
RewriteRule ^mblog/(.*)_(.*).html$ /index.php?i=mblog&eintrag=$1 [NC,L]
RewriteRule ^mblog/(.*).html$ /index.php?i=mblog&show=$1 [NC,L]
RewriteRule ^mblog /index.php?i=mblog [NC,L]
#Rewrite-Rules für die Downloads
RewriteRule ^downloads/(.*)_(.*)/seiten/(.*).html$ /index.php?i=downloads&kategorie=$1&seite=$3 [NC,L]
RewriteRule ^downloads/(.*)_(.*).html$ /index.php?i=downloads&kategorie=$1 [NC,L]
RewriteRule ^downloads/(.*).html$ /index.php?i=downloads&id=$1 [NC,L]
#Rewrite-Rules für die Programme
RewriteRule ^programme/(.*)/(.*).html$ /index.php?i=programme&id=$1 [NC,L]
#Rewrite-Rules für die Tutorials
RewriteRule ^tutorials/(.*)/(.*).html$ /index.php?i=tutorials&id=$1 [NC,L]
#Rewrite-Rules für "About me"
RewriteRule ^aboutme/bilder/(.*)/(.*)_(.*).html$ /index.php?i=aboutme&show=bilder&galerie=$2 [NC,L]
RewriteRule ^aboutme/bilder/seiten/(.*).html$ /index.php?i=aboutme&show=$1&seite=$1 [NC,L]
RewriteRule ^aboutme/(.*).html$ /index.php?i=aboutme&show=$1 [NC,L]
RewriteRule ^aboutme(.*)$ /index.php?i=aboutme&show=uebermich [NC,L]
#Rewrite-Rules das Gästebuch
RewriteRule ^gaestebuch/seiten/(.*).html$ /index.php?i=gaestebuch&seite=$1 [NC,L]
RewriteRule ^gaestebuch/(.*).html$ /index.php?i=gaestebuch&action=$1 [NC,L]
RewriteRule ^gaestebuch(.*)$ /index.php?i=gaestebuch [NC,L]
#Rewrite-Rules den Formmailer
RewriteRule ^formmailer/(.*).html$ /index.php?i=formmailer&action=$1 [NC,L]
RewriteRule ^formmailer(.*)$ /index.php?i=formmailer [NC,L]
#Rewrite-Rules für "myCine"
RewriteRule ^mycine/(.*).html$ /index.php?i=mycine&show=$1 [NC,L]
RewriteRule ^mycine(.*)$ /index.php?i=mycine&show=uebersicht [NC,L]
#Rewrite-Rules für die News
RewriteRule ^news/(.*)_(.*).html$ /index.php?i=news&id=$1 [NC,L]
RewriteRule ^news/(.*).html$ /index.php?i=news&p=$1 [NC,L]
RewriteRule ^news.html$ index.php?i=news [NC,L]
# Fehlermeldungen
ErrorDocument 404 /index.php?fehler=404
# Spambots nach User_agent aussperren
RewriteCond %{HTTP_USER_AGENT} ^.*Whacker.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailCollector [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [OR]
RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*FileHound.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*TurnitinBot.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*JoBo.*$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*adressendeutschland.*$
RewriteRule ^.* - [F]
Nun zu meinem Problem:
Zum Beispiel bei:
Code:
#Rewrite-Rules das Gästebuch
RewriteRule ^gaestebuch/seiten/(.*).html$ /index.php?i=gaestebuch&seite=$1 [NC,L]
RewriteRule ^gaestebuch/(.*).html$ /index.php?i=gaestebuch&action=$1 [NC,L]
RewriteRule ^gaestebuch(.*)$ /index.php?i=gaestebuch [NC,L]
werden alle Regeln ignoriert, es wird immer nur "/index.php?i=gaestebuch" ausgegeben, obwohl die Regel mit "http://domain.de/gaestebuch/seiten/2.html" ja eigentlich zutreffen sollte. Im Script selbst wird allerdings keine Variable ($_GET['seite']) übergeben.
Wenn ich nun aus jedem Packet die letzte Regel entferne, so bekomme ich folgende Fehlermeldung:
Code:
Fatal error: Call to undefined function: gethtmlcontent() in /www/htdocs/v114614/gaestebuch.php on line 2
Das heißt, es wird zwar irgendwie die gaestebuch.php ausgerufen, aber wohl ohne die index.php, da dort die betreffende Funktion gestanden hätte...
Und das Problem tritt irgendwie bei jedem Packet auf. Lediglich die Letztzeiler (z.B. "RewriteRule ^formmailer(.*)$ /index.php?i=formmailer [NC,L]") funktionieren, also funktioniert das Modul prinzipiell ja. Ich habe allerdings keine Ahnung wieso... Hoffe mir kann hier jemand helfen...
MCXSC
//Edit: Auf meinem lokalen Apache 1 läuft alles ohne Probleme. Bei
All inkl. läuft es jedoch nicht (Apache 2)...
//Edit 2: Mod Rewrite ist jedenfalls an. Es lief ja mal (nur nicht so viele Regeln; die alte Datei hab ich allerdings nicht mehr)... :confuse: