Autor | Zpráva | ||
---|---|---|---|
koko Profil * |
#1 · Zasláno: 12. 9. 2007, 20:20:31
root obsahuje adresáře dir1 (obsahuje hlavní web), dir2(obsahuje jiny web)
na dotaz domena.cz/něco chci podstrčit domena.cz/dir1/něco s výjimkou, pokud někdo zadá přímo domena.cz/dir2 podařilo se mi přesměrovat jednu konkrétní stránku takto #RewriteRule ^strankaxy dir1/index.php?menu=strankaxy [QSA,L] ale pokud použiji obecné #RewriteRule (.*) dir1/index.php?menu=$1 [QSA,L] tak se server zamrzne = pravděpodobně dělá redirekt stále v cyklu Jak udělat podmínku, aby vícekrát nesměroval? směruj jen, když není část za domena.cz/... rovna index.php nebo když není rovna dir2 zkoušel jsem neúspěšně např. #RewriteCond !(^( (index.php)|(dir2) )) [NC] děkuji |
||
koko Profil * |
#2 · Zasláno: 12. 9. 2007, 20:24:40
zajímavé také je, že při použí #RewriteRule ^strankaxy dir1/index.php?menu=strankaxy [QSA,L] se html vnořeného webu zobrazí, ale odkazy na obrázky již né, protože jsou v dir1/ a zobrazená stránka se chová jako by byla pří v rootu, i když je do rootu jen podstrčena z dir1..
snad jsem to popsal srozumitelně:) |
||
Bronzi Profil |
#3 · Zasláno: 12. 9. 2007, 21:31:36
použij jako podmínku
RewriteCond %{REQUEST_FILENAME} !-d to ti vynechá všechny složky které existují. jinak si přečti jak RewriteCond funguje http://interval.cz/clanky/mod-rewrite-pro-hezka-url-rewritecond/ |
||
koko Profil * |
#4 · Zasláno: 13. 9. 2007, 00:04:33
uz jsem nasel priklad na http://drupal.org/node/101644
/* k cemu je RewriteRule ^$ /site [L,QSA] z toho prikladu? to co to ma delat podle jejich popisu to nedela, nemaji tam chybu? */ trosku si pohral a zjistil, ze takhle uz rewrite funguje: RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /dir1/index.php?menu=$1 [L,QSA,NE] 2 Bronzi diky ale stale jsem nerozchodil obrazky a styly, ktere mam vsechny pripojene relativne, nechci je prepisovat na absolutni cesty, jako to radi niCe zde topic=56238 poradi nekdo reseni? kdyz pridam do zavorky R jako presmerovani, tak je sice vse v poradku nacteno vcetne obr a stylu, ale url je skareda |
||
koko Profil * |
#5 · Zasláno: 13. 9. 2007, 00:26:33
Je to spatny, reseni zrejme neni http://www.webmasterworld.com/forum92/5942.htm
|
||
Kajman_ Profil * |
#6 · Zasláno: 13. 9. 2007, 08:57:03
nechci je prepisovat na absolutni cesty
Můžete všude přidávat nějaký prefix, co vytvoří absolutní cestu a nastavíte si ho na každém serveru jinak. |
||
koko Profil * |
#7 · Zasláno: 13. 9. 2007, 10:49:17
myslíte na to ošetřit v php způsobem src=$prefix_serveru."images/obr.jpg"... ?
to není špatný nápad, díky |
||
Časová prodleva: 6 dní
|
|||
dady Profil * |
#8 · Zasláno: 19. 9. 2007, 12:02:38
Zdravím, mám podobný problém, ale nepodařilo se mi jej tím vyřešit...
Root obsahuje adresáře dir1 (obsahuje hlavní web), dir2(obsahuje jiný web). Když tedy zadám URL www.example.com/dir1/ načte se mi 1. web, když zadám www.example.com/dir2/, načte se logicky druhý. Když však zadám www.example.com/, rovněž chci směřovat na 1. (hlavní) web! V rootu mám soubor .htaccess a zkouším zde: RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /dir1/ [L,QSA,R] V tomhle případě se web nikam nepřesměruje, ale zůstane trčet na indexu v rootu (kde nic není). V případě, že zapoznámkuji podmínku, pak se server zacyklí (URL nejspíš vypadá nějak takto: www.example.com/dir1/dir1/dir1/dir1/dir1/dir1/dir1/dir1/dir1/dir1/dir1 /dir1/dir1/dir1/dir1/dir1/) Nevím si rady, zkoušel jsem už kde co, ale zatím jsem to nevyřešil. Prosím o nakopnutí. Díky, dady. |
||
Kajman_ Profil * |
#9 · Zasláno: 19. 9. 2007, 12:14:49
RewriteBase /
RewriteRule ^/?dir - [L] ... |
||
dady Profil * |
#10 · Zasláno: 19. 9. 2007, 13:36:46
Díky, to pomohlo
|
||
Časová prodleva: 17 let
|
0