Autor Zpráva
Yuhů
Profil
Máme zde v diskusi moc složitá URL. Potřeboval bych nastavit mod_rewrite tak, aby na dotaz

http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=1&topic=44 44

vracel URL

http://diskuse.jakpsatweb.cz/4444.html

samozřejmě správně vyhodnocené. Nějak s tím mod_rewrite stále neumím, podařilo se mi vyrobit jenom pár obrazovek Internal Server Error.

Děkuju za každou pomoc.
centi
Profil
RewriteEngine on

RewriteRule ^http://diskuse.jakpsatweb.cz/(.*)\.html$ http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=1&topic=$1 [L,QSA]


Neskusal som, len som prepisal jedno svoje .htaccess, ktore niekedy davno fungovalo :-)
Yuhů
Profil
díky, někdy v noci to zkusim
llook
Profil
Tohle jsem zkusil na localhostu a fungovalo to:

RewriteEngine On
RewriteRule ([0-9]+)\.html index.php?action=vthread&forum=1&topic=$1
Yuhů
Profil
no jo, ale já jsem to chtěl přesně opačně. Neděste se, myslím to vážně -- potřebuju přesměrovat dynamickou adresu na statickou, nikoli opačně! Zkuste si někdo prosím přečíst původní dotaz, díky.
j_hajsl
Profil
RewriteEngine On
RewriteRule index.php?action=vthread&forum=1&topic=([0-9]+) $1\.html

nevyzkoušeno ...
Yuhů
Profil
> nevyzkoušeno ...

ano, to je opravdu nevyzkoušeno. Takhle jsem to samozřejmě zkusil. Nefunguje to :-)
Kajman
Profil *
RewriteEngine On
RewriteCond %{QUERY_STRING} ^action=vthread&forum=([0-9]+)&topic=([0-9]+)$
RewriteRule ^index\.php$ /%2.html? [R=301]
Yuhů
Profil
to vypadá zajímavě,
co tam prosím přesně znamená to
%2
?
Kajman
Profil *
Obsah druhé závorky v podmínce RewriteCond. Tak jak se v RewriteRule může vkládat ohraničená hodnota díky $1, tak se dá z poslední podmínky cucnout obdoba pomocí %1.
Kajman
Profil *
Takhle nějak by vypadalo základní přepisování minibb:


RewriteEngine on
#clen-cislo.html <--> index.php?action=userinfo&user=cislo
#cislo.html <--> index.php?action=vtopic&forum=cislo
#cislo1-cislo2.html <--> index.php?action=vthread&forum=cislo1&topic=cislo2
#cislo1-c2-c3.html <--> index.php?action=vthread&forum=cislo1&topic=c2&page=c3

#parametry na kratkou html adresu
RewriteCond %{QUERY_STRING} ^action=userinfo&user=([0-9]+)$
RewriteRule ^(index\.php)?$ /clen-%1.html? [R=301]
RewriteCond %{QUERY_STRING} ^action=vthread&forum=([0-9]+)&topic=([0-9]+)$
RewriteRule ^(index\.php)?$ /%1-%2.html? [R=301]
RewriteCond %{QUERY_STRING} ^action=vtopic&forum=([0-9]+)$
RewriteRule ^(index\.php)?$ /%1.html? [R=301]
RewriteCond %{QUERY_STRING} ^action=vthread&forum=([0-9]+)&topic=([0-9]+)&page=([0-9]+)$
RewriteRule ^(index\.php)?$ /%1-%2-%3.html? [R=301]

#html adresy na puvodni (pridano rw=1 aby se to necyklilo)
RewriteRule ^clen-([0-9]+)\.html$ /index.php?action=userinfo&user=$1&rw=1 [L]
RewriteRule ^([0-9]+)\.html$ /index.php?action=vtopic&forum=$1&rw=1 [L]
RewriteRule ^([0-9]+)-([0-9]+)\.html$ /index.php?action=vthread&forum=$1&topic=$2&rw=1 [L]
RewriteRule ^([0-9]+)-([0-9]+)-([0-9]+)\.html$ /index.php?action=vthread&forum=$1&topic=$2&page=$3&rw=1 [L]


Ale možná by bylo ještě lepší, kdyby ta kategorie nebyla číslo, ale nějaký krátký a výstižný text (např. vyhledavace-4444.html). To by šlo asi dělat celkem ladně přes přepisovací mapy.
Kajman_
Profil *
Japonští spamovací roboti asi už umí javascript :-)
Railbot
Profil
Tohle téma se spam botům obzvláště líbí.
DoubleThink
Profil *
Podle data zřejmě už neaktuální vlákno. Zamykám.
Toto téma je uzamčeno. Odpověď nelze zaslat.