Portál AbcLinuxu, 12. května 2025 06:36

Dotaz: Rewrite - Oprava

19.2.2011 13:48 Jarek
Rewrite - Oprava
Přečteno: 146×
Odpovědět | Admin
Ahoj, mám tohle pravidlo které když uživatel nezadá lomitko na konci url tak se automaticky doplni.
Jenže problém je v tom, že se doplní i za název domény.
Příklad, uživatel zadá do url
http://domena.ltd/foo
doplní se 2 lomítka a stránka se přesměruje na
http://domena.ltd//foo/
proč dvě, když chybí jen na konci, proč tam cpe ještě další lomítko za domena.ltd když už tam jedno je?

  RewriteCond %{REQUEST_URI} !\.[[:alnum:]]+$
  RewriteRule ^(.+[^/])$ /$1/ [R=301]
Opravil by to prosím někdo zkušený? Děkuji

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

19.2.2011 16:17 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: Rewrite - Oprava
Odpovědět | | Sbalit | Link | Blokovat | Admin
To další lomítko tam cpeš ty :), ono v tom $1 už zřejmě jedno je a ty uděláš /$1/.
Řešení 1× (MMMMMMMMM)
19.2.2011 16:31 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Rewrite - Oprava
Odpovědět | | Sbalit | Link | Blokovat | Admin
Když uživatel zadá http://domena.ltd/foo, porovná se /foo s výrazem (.+[^/])$, kterému vyhoví, a do proměnné $1 se vloží to, co odpovídá výrazu v kulatých závorkách, tj. /foo. Vy následně provedete přesměrování na /$1/, tedy na //foo/. Spravit to můžete buď úpravou výrazu na ^/(.+[^/])$ (stejně každá URL musí začínat lomítkem), nebo úpravou přesměrování na $1/.
19.2.2011 16:52 Jarek
Rozbalit Rozbalit vše Re: Rewrite - Oprava
Moc děkuji ;)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.