Autor Zpráva
coltcha
Profil *
Zdravim, prosim o radu s rewritem, jsem zacatecnik a trochu v tom plavu

potrebuji presmerovat neco.cz (ale i www.neco.cz) na www.neco.cz/cs/

tohle funguje
RewriteCond %{HTTP_HOST} ^neco.cz$
RewriteRule ^(.*)$ http://www.neco.cz/cs/$1 [R=301,QSA]

pokud ovsem pridam druhou podminku a pravidlo:

RewriteCond %{HTTP_HOST} ^www.neco.cz$
RewriteRule ^(.*)$ http://www.neco.cz/cs/$1 [R=301,QSA]

tak se to zacykli a vyhazuje http://www.neco.cz/cs/cs/cs/cs/cs/ ....

Nejak nechapu proc se tak deje , myslel jsem ze ^neco.cz$ a ^www.neco.cz$ mi jasne definuji regularem co tim projde, tedy tyhle presny vyrazy (^-zacatek a $-konec), tak vubec nechapu proc se to tam nabaluje. Dekuji za kazdou radu...
bohyn
Profil
coltcha
Nejak nechapu proc se tak deje , myslel jsem ze ^neco.cz$ a ^www.neco.cz$ mi jasne definuji regularem co tim projde, tedy tyhle presny vyrazy (^-zacatek a $-konec), tak vubec nechapu proc se to tam nabaluje.
Protoze tim kontrolujes jen domenu - %{HTTP_HOST}

Ruku do ohne za to nedam, ale snad to funguje
RewriteCond  %{HTTP_HOST} ^neco.cz$ [OR]
RewriteCond  %{REQUEST_URI}  =!^/cs/?
RewriteRule ^(.*)$ http://www.neco.cz/cs/$1 [R=301,QSA]
coltcha
Profil *
dekuji za reakci... ale stejnak to neresi muj problem... to cykleni delala vpodstate ta druha podminka, kterou chci zajistit aby se to presmerovavalo i z www.neco.cz

RewriteCond %{HTTP_HOST} ^www.neco.cz$
RewriteRule ^(.*)$ http://www.neco.cz/cs/$1 [R=301,QSA]


vas rewrite resi presmerovani pouze z neco.cz
coltcha
Profil *
tak jsem to nakonec vyresil kombinaci php a rewrite

v pripade ze zadam neco.cz - rewrite presmeruje na www.neco.cz a to vyhodnoti php a presmeruje na www.neco.php/cs/ . Nevim ovsem jestli to dvojite presmerovani v pripade zadani url bez www nebude nejak vadit robotum... ma s tim nekdo zkusenosti??

Dik

.htaccess
--------------------------
#doplneni www
RewriteCond %{HTTP_HOST} ^neco\.cz [NC] 
RewriteRule ^(.*)$ http://www.neco.cz/$0 [R=301]

#doplneni lomitka na konci url
RewriteCond %{REQUEST_URI} !\.[[:alnum:]]+$
RewriteRule ^(.+[^/])$ $1/ [R=301]

vlastni prepisovani - zjisteni mutace a zbytku
RewriteRule ^(..)/(.*)$ index.php?page=$2&lang=$1 [QSA,L]


index.php
--------------------------
// vyhodnotime lang
if(!isset($_GET['lang'])){
   
   // presmeruju na deafultni cs verzi
   header('Location: '.LOKAL.LG_DEFAULT. "/");
   define ('LG', LG_DEFAULT);

} else {
   if(in_array($_GET['lang'], $lg_array)){
      define ('LG', $_GET['lang']);
   } else {
      header('Location: '.LOKAL.LG_DEFAULT. "/");
      define ('LG', LG_DEFAULT); 
   }
      
}
bohyn
Profil
coltcha
To moje bez te druhe podminky funguje (pokud to moje funguje tak je zbytecna)?
coltcha
Profil *
toto funguje
RewriteCond %{HTTP_HOST} ^neco.cz$ [OR]
RewriteRule ^(.*)$ http://www.neco.cz/cs/$1 [R=301,QSA]

ale ja nevim jak k tomu pridat tu dalsi podminku aby to presmerovalo i z www.neco.cz

uz mi radili i toto RewriteCond %{HTTP_HOST} ^(neco\.cz|www\.neco\.cz)$ ale to se taky cykli...

kazdopadne reseni ve 4. prispevku mi funguje podle mych predstav... jen nevim jak s tema robotama...
bohyn
Profil
coltcha
Reseni z [#2] bez dalsich podminek nefunguje? Melo by to resit jak ten adresar tak domenu.
coltcha
Profil *
reseni 2 nefunguje - furt to cykli

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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

0