Autor | Zpráva | ||
---|---|---|---|
Chates Profil |
#1 · Zasláno: 27. 6. 2007, 22:16:21
Mam stranku www.net-smart.cz a potreboval bych tam presmerovat stranky net-smart.cz (pokud nekdo zada takovou adresu). Vim, ze se to dela pres .htaccess rewrite rule. Uz jsem to dokonce nekolikrat funkcne udelal, jenze ted to najednou nejde a nevim proc. Muj .htaccess:
RewriteEngine On RewriteCond %{HTTP_HOST} ^net-smart.cz RewriteRule (.*) http://www.net-smart.cz/$1 [R=301,QSA] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?url=$1 [L,QSA] Vidi nekdo nejakou chybu? |
||
Senyx Profil |
#2 · Zasláno: 27. 6. 2007, 23:22:02
Přesměrování na doménu bez www
Požadavky na můj web mohou požadavky přicházet s hostname "jakpsatweb.cz" nebo "www.jakpsatweb.cz". Preferuji, aby lidé i vyhledávače chodili jenom na verzi s www, a tak je přesměrovávám. Příklad: Všechny požadavky, co míří na jakpsatweb.cz bez www, přesměruju na verzi domény s www: RewriteCond %{HTTP_HOST} ^jakpsatweb.cz RewriteRule (.*) http://www.jakpsatweb.cz/$1 [R=301,QSA,L] S pravidlem RewriteRule se pracuje pouze v případě, že je splněna podmínka RewriteCond. V tomto případě jsem například testoval proměnnou %{HTTP_HOST}, ve které je hostname (doménová část) vyžádaného url. Pokud hostname ("jakpsatweb.cz" nebo "www.jakpsatweb.cz") začíná (to je ta stříška) rovnou řetězcem "jakpsatweb.cz", tak se pravidlo provede. A proto když někdo požádá o http://jakpsatweb.cz/cokoliv, je přesměrován na http://www.jakpsatweb.cz/cokoliv . Příznak QSA v hranatých závorkách ještě zařídí, že se do nové adresy přenese i query-string (část adresy za otazníkem). Výše uvedený zápis musí být v rootu domény, protože jinak by se to $1 vyhodnocovalo relativně k adresáři (jméno adresáře by se uřízlo, nevím proč). Toto asi nějak souvisí s RewriteBase (nevím). -------------------------- Toto jsem vytáh z http://jakpsatweb.cz/server/mod-rewrite.html |
||
Časová prodleva: 17 let
|
0