Autor Zpráva
Gaudino
Profil
Ahoj, potrebuju drobnou radu ohledne .htaccess a mod_rewrite

pouzivam tento zapis, ale funguji mi poute ty typy stranek, ktere jsou jednopolozkove, ale ty vicepolozkove nefunguji, pricemz maji stejny schema url.

vzhledek k nefunkcnosti predpokladam, ze server nedokaze rozlisit jestli se jedna o jednopolozkovou nebo vicepolozkovou. Muzete mi prosim vas poradit, jak to udelat.

Dekuji pekne.

kod:

#RewriteCond %{QUERY_STRING} ^strana=jednopolozkova&menu=([^&]+)$
#RewriteRule ^index.php$ %1/? [R=301,L]
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteRule ^([^/]+)/?$ ?rw=1&strana=jednopolozkova&menu=$1 [L,QSA]

#RewriteCond %{QUERY_STRING} ^strana=vicepolozkova&menu=([^&]+)$
#RewriteRule ^index.php$ %1/? [R=301,L]
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteCond %{REQUEST_FILENAME} !-f
#RewriteRule ^([^/]+)/?$ ?rw=1&strana=vicepolozkova&menu=$1 [L,QSA]
BetaCam
Profil
Gaudino

No a jak vypadaj tvé URI při jdnopoložkovejch a vícepoložkovejch stránkách.

vzhledek k nefunkcnosti predpokladam, ze server nedokaze rozlisit jestli se jedna o jednopolozkovou nebo vicepolozkovou.

No to je dost logické, že to nepozná když u obou máš stejnej regulár.
Gaudino
Profil
no oboje jesou uplne stejne, pouze se lisi slovem "jednopolozkova" a "vicepolozkova"…

ted jsem to prepsal takhle a funguje to jiz pro oba:

RewriteCond %{QUERY_STRING} ^strana=([^&]+)&menu=([^&]+)$
RewriteRule ^index.php$ %1/%2/? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)?/?/?$ ?rw=1&strana=$1&menu=$2 [L,QSA]

ale adresa vypada budu:
/jednopolozkova/o_firme/ pro jednopolozkovou a /vicepolozkova/test/ pro vicepolozkovou

takze takhle by to bylo uz ok, al jeste bych rad vyhodil (skryl) z url adresy ty "/jednopolozkova/" a "/vicepolozkova/"

jde to nejak?

diky
BetaCam
Profil
Gaudino
takze takhle by to bylo uz ok, al jeste bych rad vyhodil (skryl) z url adresy ty "/jednopolozkova/" a "/vicepolozkova/"

Jde to udělat libovolně, ale musi se lišit požadované URI.

Mimochodem k čemu je tam to rw=1?
Gaudino
Profil
takze jak to mam teda udelat? muzes mi to prosim te nejak vhodne poupravit?

odkazuju takto:

jednopolozkova:
<a class="top_link" href="/index.php?strana=jednopolozkova&amp;menu={$articles[value].syst _nazev_menu}" title="{$articles[value].nazev_menu}"> <span>{$articles[value].nazev_menu}</span></a>

vicepolozkova:
<a class="top_link" href="/index.php?strana=vicepolozkova&amp;menu={$articles[value].syst_ nazev_menu}" title="{$articles[value].nazev_menu}"> <span>{$articles[value].nazev_menu}</span></a>

a k tomu je v htaccess teda toto:

RewriteCond %{QUERY_STRING} ^strana=([^&]+)&menu=([^&]+)$
RewriteRule ^index.php$ %1/%2/? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/([^/]+)?/?/?$ ?strana=$1&menu=$2 [L,QSA]

to rw=1 tam byt nema, to tam zbylo z nejakejch mej pokusu :-) , uz je to pryc

dekuji pekne

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0