mod_rewrite \.htm?bla=test

Wolfsbein

Erfahrenes Mitglied
Hallo

Code:
# 1. Regel
RewriteRule ^_(hsgb)_(de|en)\.htm$ index\.php?topic=$1&lang=$2 [L]
RewriteRule ^_(hsgb)_(de|en)\.htm?hsgbPage=([0-9]+)$ index\.php?topic=$1&lang=$2&hsgbPage=$3 [L]
Die erste Zeile geht. Wenn ich aber sowas aufrufe:
_hsgb_de.htm?hsgbPage=1
dann gibt mir print_r($_GET) das gleich aus wei bei
_hsgb_de.htm
und der Seiteninhalt ist dann natürlich auch der Gleiche. Da ich jetzt schon einige Zeit rumprobiere und nicht weiterkomme frage ich mich, ob das überhaupt so geht? Vielen Dank
 
Ich habe jetzt in Erfahrung gebracht, dass es irgendwie mit RewriteCond zusammenhängten soll. Aus der Beschreibung auf apache.org werde ich aber nicht schlau.
 
Per RewriteCond kann man Bedingungen für das Ausführen einer RewriteRule festlegen.

Code:
RewriteCond  %{QUERY_STRING} ^(hsgbPage=[0-9]+)$ [OR]
RewriteCond  %{QUERY_STRING} ^$

RewriteRule ^_(hsgb)_(de|en)\.htm$ /index.php?topic=$1&lang=$2&%{QUERY_STRING} [L]



Das oben liest sich folgendermassen:
Wenn der QUERY_STRING(diese Variable steht auch unter mod_rewrite zur Verfügung)....
also wenn er hsgbPage=Ziffer enthält, [oder] leer ist.....

...erst dann wird die RewriteRule angewandt.
Der QUERY_STRING wird in der RewriteRule nicht mehr untersucht...der stimmt ja schon, er wird zum Schluss einfach ans Ende rangehangen.
Fertig:)
 
ich nutze mal einfach diesen Thread mit ;)

ich habe in meiner htaccess dieses stehen:

PHP:
  RewriteRule ^thread,(.*),(.*)\.html$   thread.php?threadid=$1&goto=$2   [L]
RewriteRule ^thread,(.*)\.html$   thread.php?threadid=$1   [L]
RewriteRule ^thread\.html   thread.php   [L]

wenn ich jetzt z.b. eine thread.html oder thread,5.html aufrufe bleibt dieser html-Link auch in der Adresszeile drinne, sowie ich aber jetzt thread,5,lastpost.html ausfrufe, ändert sich der Link beim Aufruf in einen PHP-Link.

zu sehen hier unten bei letzte Themen.

Der Link dazu wird so aufgerufen: thread,$thread[threadid],lastpost.html und soll zu thread.php?threadid=$thread[threadid]&goto=lastpost verweisen, aber der html-Link soll bleiben. Wo liegt da der Fehler?
 
Zurück