Hallo, Gast! (Registrieren)

Wir wünschen allen Besuchern frohe Ostern!

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
mod_rewrite in Verbindung mit Parametern
#1
Huhu

Ich habe mittels mod_rewrite in meiner .htaccess bereits geschafft, auf meiner Seite die .php File-Extension in der Adresszeile zu entfernen. Hierfür habe ich folgenden Code:
PHP-Code:
RewriteEngine On
RewriteCond 
%{REQUEST_FILENAME} !-f
RewriteCond 
%{REQUEST_FILENAME}.php -f
RewriteRule 
^(.*)$ $1.php [NC,L

Aufruf also url.de/home, url.de/about und url.de/downloads und so weiter.

Bei der Download-Seite ist unter url.de/downloads eine Übersicht aller Download vorhanden, während unter url.de/downloads?id=X die einzelnen Downloads im Detail einsehbar sind. Nun möchte ich die URL so abkürzen, dass ich in der Adresszeile url.de/downloads/X habe. Allerdings habe ich jetzt mehrere Stunden gegooglet und keine Lösung dafür gefunden. Könnt ihr mir dabei helfen? Wäre super Smile
Zitieren
#2
Das wäre wohl so
Code:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^([^/]+)/([0-9]+)$ $1.php?id=$2 [NC,NS,QSA]
RewriteRule ^(.*)$ $1.php [NC,NS,QSA]
Zitieren
#3
Danke für die Antwort. Allerdings erhalte ich mit diesem Code immer nur einen 500 Internal Server Error, egal welche Seite ich besuche.
Zitieren
#4
Ja, auf Zeile 3 ist aus das f bei -f verschwunden. Hab den Beitrag oben aktualisiert. Smile
Zitieren
#5
Funktioniert aus welchen Gründen auch immer auch weiterhin nicht. Selbe Fehlermeldung, Internal Server Error.
Zitieren
#6
Ich habe lokal damit keine Probleme. Öffne doch den Apache Errorlog und schau nach, wieso er einen 500er Error wirft.
Zitieren
#7
Laut meines Hosters (http://one.com) erzeugt der Server keine Fehler-Logs. Allerdings scheint die folgende Zeile Probleme zu machen:
Code:
RewriteRule ^(.*)$ $1.php [NC,NS,QSA]

Ist diese auskommentiert, funktioniert meine Seite. Allerdings muss ich dann das .php überall anhängen.
Zitieren
#8
Ich habe jetzt mal die kompletten Homepage-Dateien auf meinen lokalen Server runtergeladen und es nochmal versucht. Auch hier tritt der Fehler auf.

Folgende Fehlermeldung landet im wird im xampp/apache/logs/error.log generiert:
Code:
[Sat Oct 04 22:39:22.769783 2014] [core:error] [pid 5632:tid 1632] [client 127.0.0.1:59702] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
[Sat Oct 04 22:39:22.769783 2014] [core:error] [pid 5632:tid 1632] [client 127.0.0.1:59702] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.

Könnt ihr damit was anfangen? Zur Not meldet euch per PN, dann bekommt ihr die Dateien geschickt.
Zitieren
#9
Nun, du könntest bei der letzten Zeile noch den Last Parameter hinzufügen, jedoch weiss ich nicht, warum das eine Endlosschleife generiert.
Zitieren
#10
Ich habe es jetzt versucht, ich bekomme bei mehreren Versuchen nicht hin, beziehungsweise weiß ich nichtmal, was du meinst... Ich bin komplett neu in Sachen htaccess, wie ich bereits anmerkte. Könntest du das noch einmal genauer erläutern?
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  mod_rewrite subdomain Marti95. 10 4.104 19.12.2010, 15:36
Letzter Beitrag: selipsa