Autor Zpráva
Pavel015
Profil
Dobrý večer.

Bojuji s tím, že jsem si pomocí online generátoru nechal vygenerovat, že pokud budu mít článek s adresou mojedomena.cz/index.php?action=clanky&idclanku=913, je možné na ni přistupovat odkazem mojedomena.cz/clanky/913.html. Vyhodilo mi to takový kód:
RewriteEngine On
RewriteBase /
RewriteRule ^([^/]*)/([^/]*)\.html$ /index.php?action=$1&idclanku=$2 [L]

Když jsem ale pak na mojedomena.cz/clanky/900.html, v menu, kde mi to generuje adresy, se vždy zobrazuje mojedomena.cz/clanky/index.php?id=&action=kontakt.

Jde mi o tohle:
Nelze nějak V .HTACCESS nastavit, že podmínka platí pouze když jsem v článcích?

Moc děkuji.
Keeehi
Profil
RewriteRule ^clanky/([0-9]*)\.html$ /index.php?action=clanky&idclanku=$1 [L]

Ale spíš bude špatně napsaný ten generátor odkazů. Nastavení apache by na něj nemělo mít vliv.
Pavel015
Profil
Keeehi:
Děkuji.
Když bych chtěl, aby to přesmětovávalo z /index.php?action=clanky&idclanku=$1 na /clanky/cislo, tak to bude vypadat jak?
RewriteRule ^clanky/([0-9]*)\.html$ /index.php?action=clanky&idclanku=$1 [L,R=301] takhle?
Keeehi
Profil
Pavel015:
To by přece přesměrovávalo přesně opačně.
Ovšem problém je, pokud bys tam chtěl obě, jak podstrčení tak přesměrování z ošklivé na hezkou. Vytvoří se cyklus a ještě jsem neviděl hezké řešení. Proto za mě používám jen jediné pravidlo
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php

To mi za všechno co není reálný soubor podstrčí index.php. A v něm si už řeším přesměrování, vypisování 404 atp.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0