/ / Bedeutung von ? und $ in htaccess umschreiben Regel - .htaccess, mod-umschreiben, url-umschreiben

Bedeutung von ? und $ in htaccess rewrite Rule - .htaccess, mod-rewrite, url-rewriting

Ich kenne die grundlegende Umschreibregel in der .htaccess-Datei. aber ich finde nicht die bedeutung von highlighed ? und $:

RewriteRule ^ ([a-zA-Z]) /?([a-zA-Z])?/?([a-zA-Z0-9] *)?/?$ index.php Controller = $ 1 & action = $ 2 & id = $ 3 [NC, L]

Formatierter Regelcode:

RewriteRule ^([a-zA-Z]*)/?([a-zA-Z]*)?/?([a-zA-Z0-9]*)?/?$ index.php?controller=$1&action=$2&id=$3 [NC,L]

Kann jemand sagen, was sie hier benutzt haben. Ich versuche es selbst, kann es aber nirgends finden. Jede Hilfe wäre sehr dankbar

Antworten:

2 für die Antwort № 1

Diese Frage ist eher ein Regex als ein .htaccess. Lassen Sie mich versuchen zu antworten:

  • ? In Regex bedeutet 0 oder 1 Übereinstimmung oder etwas zu machen wahlweise Spiel
  • $ ist Endanker in Regex, dh das Ende der Eingabe.

Ihre Umschreibungsregel scheint beides zu machen action und id components optional und diese Regel ermöglicht einen optionalen abschließenden Schrägstrich am Ende des hübschen URI.