RewriteRule .htaccess
jens65m
- webserver
Hallo =),
ich bekomm es leider nicht hin eine passende "RewritingRule" zu schreiben.
Ich möchte folgendes bezwecken:
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)/$ /index.php/$1/$2/ [L]
RewriteRule ^([^/]*)/([^/]*)$ /index.php/$1/$2/ [L]
1: Warscheinlich gibt es für mein Beispiel oben schon eine bessere Schreibweise
2: Ich möchte, falls nur einer der beiden Parameter gesetzt ist, eben nur diesen Umschreiben also quasi zusätzlich
RewriteRule ^([^/]*)$ /index.php/$1/ [L]
RewriteRule ^([^/]*/$ /index.php/$1/ [L]
LG, Jens
Hi,
ich bekomm es leider nicht hin eine passende "RewritingRule" zu schreiben.
Ich möchte folgendes bezwecken:
Es ist sinnlos, das, was du erreichen möchtest, (nur) mit dem Code zu beschreiben, der „nicht funktioniert“.
Also: Was möchtest du erreichen?
MfG ChrisB
naja dass die URL
http://www.example.com/1/2
bzw.
http://www.example.com/1/2/
umgeschrieben wird in
http://www.example.com/index.php/1/2/
und sollte nur ein Parameter angegeben sein:
http://www.example.com/1
bzw.
http://www.example.com/1/
in
http://www.example.com/index.php/1/
lg, jens
Also ich bin zumindest soweit gekommen:
RewriteRule ^test/([^/]*)/?([^/]*)/?$ index.php?lang=$1&action=$2 [L]
Jetzt sollte das Schlüsselwort "test" allerdings noch rausfallen. Entferne ich es aber einfach so stimmen die Parameter nicht mehr.
Außerdem funktionieren angehängte Parameter nun nicht mehr.
Bisher:
-------
Aus
http://localhost/test/de/parameter/?par=irgendwas
wird
http://localhost/index.php?lang=de&action=parameter
Was ich möchte:
---------------
Aus
http://localhost/de/parameter/?par=irgendwas
wird
http://localhost/index.php?lang=de&action=parameter&par=irgendwas
wie kann ich das lösen?
[latex]Mae govannen![/latex]
Außerdem funktionieren angehängte Parameter nun nicht mehr.
QSA
Stur lächeln und winken, Männer!
Kai
Hi!
RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)/$ /index.php/$1/$2/ [L]
RewriteRule ^([^/]*)/([^/]*)$ /index.php/$1/$2/ [L]
1: Warscheinlich gibt es für mein Beispiel oben schon eine bessere Schreibweise
RewriteRule ^(.*)$ /index.php/$1
oder mit Apache 2.2: http://httpd.apache.org/docs/2.2/mod/mod_dir.html#fallbackresource
2: Ich möchte, falls nur einer der beiden Parameter gesetzt ist, eben nur diesen Umschreiben also quasi zusätzlich
Auch wenn es drei und mehr werden, reicht die eine Regel, und sie ist auch noch gegen Trailing Slashes unempfindlich.
Lo!