Mám stránky tady na webzdarma, ale existuje hodně duplicitních stránek: www.domena.cz
www.domena.cz/index.htm
domena.cz
domena.cz/index.htm
Chtěla bych tuhle duplicitu odstranit. Existuje soubour .htacess, který by měl vypadat takhle:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domena\.cz
RewriteRule (.*) http://www.domena.cz/$1 [R=301,L]
RewriteCond %{HTTP_HOST} domena\.cz/index.php
RewriteRule (.*) http://www.domena.cz/ [R=301,L]
Je tohle správně a bude to fungovat a odkazovat skutečně na www.domena.cz a tím nebude můj web penalizován za duplicitu?
Děkuji za vaše odpovědi.
Lucie
Vypadá to slibně. Proč to nezkusíš?
Ve svém .htaccess mám např. toto:
RewriteCond %{HTTP_HOST} ^www\.ekobrikety\.vyrobce\.cz
RewriteRule (.*) http://ekobrikety\.vyrobce\.cz/$1 [R=301,QSA,L]
Lišíme se v podstatě jen tím QSA.
a já mám toto:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)\.neco\.unas\.cz$ [NC]
RewriteRule ^(.*)$ http://neco.unas.cz/$1 [R=301,QSA,L]
=Lucie=
Z tve posledni vety jsem to pochopil tak, ze se bojis o ztratu pozice ve vyhledavaci pri pripadne penalizaci za duplicity.. Stranky www.domena.tld a domena.tld jsou odlisne (tudiz je mozno je chapat jako duplicitu, a vyhledavace to tak i vetsinou berou), avsak domena.tld/index.php a domena.tld/ jsou identicke - tedy o duplicitu se primo nejedná (i kdyz jsou to 2 adresy).
a ja tam mam pro zmenu:
RewriteCond %{HTTP_HOST} ^domena\.tld [NC]
RewriteRule ^(.*)$ http://www.domena.tld/$1 [R=301,QSA,NE,L]
Jinak pri vkladani ukazek kodu, kde se pracuje s domenami, tak se doporucuje pouzivat example.net / example.com / example.org nebo domain.tld / domena.tld :)
Oki, takže když mám domena.prodejce.cz, hlavní stránka je index.htm, tak bude pozměněný kód vypadat takhle?
A nevím, co znamená to QSA:(
RewriteEngine On
RewriteCond %{HTTP_HOST} ^domena\.prodejce\.cz
RewriteRule (.*) http://www.domena.prodejce.cz/$1 [R=301,QSA,L]
RewriteCond %{HTTP_HOST} domena\.prodejce\..cz/index.HTM
RewriteRule (.*) http://www.domena.prodejce\.cz/ [R=301,QSA,L]
díky.... nerada bych něco zkazila, protože bych pak nevěděla, jak z toho ven...
RTFG: [QSA] - „query string append“ - Do výsledné adresy přidej i řetězec za otazníkem.
Nechci mit jen blbou poznámku, ale nebylo by lepší druhe pravidlo přepsat tak, at se misto samotneho otazniku (jako rootu) pouzival primo soubor index.HTM?
Uz proto, ze ostatni podstranky budou mit take uz neco v url - napriklad onas.html, nabizime.html atd.. ;)
Pripadne druhou podminku vubec neresit pres mod_rewrite, ale pres index.php, kde bys pouze s header('Location..'); presmerovala na napr. domena.prodejce.cz/uvod.html ;) (a tedy by na indexu vubec zadny obsah nebyl, ale zaroven by se nedal "zobrazit" :))
Tak už jsem to pověsila na web a první pravidlo funguje a vždy to přepíše na adresu s www.
Ale to druhé se nějak nepovedlo, na index.htm to stále odkazuje. Už jsem se tenhle problém pokoušela odstranit přes tuším rewrite, ale udělalo to, že se stránka načítala neustále dokola.
Můžete mi poradit něco konkrétního, díky.
Lucie
<HTML>Co třeba takto:
<code>
RewriteRule ^index.HTM$ http://www.domena.prodejce.cz/ [R=301,L]
</code></HTML>
no tak jsem to zkusila, ale asi to nefunguje. Když kliknu na odkaz na úvodní stranu www.domena.prodejce.cz/index.htm, tak se tohle zobrazí nahoře v adrese a na www.domena.prodejce.cz se to nepřepíše.
<HTML>Upravila jsi index.HTM na správný název? Mně osobně to funguje, mám to stejně (jen jsem tam dala to index.HTM a www, aby to odpovídalo tvým příkladům).</HTML>
=Lucie=
Nezapominej, ze pravidla jsou case-sensitive ;)
Pokud potrebujes case-insensitive pouzij flag NC.
Neupravovala jsem to, protože na svých stránkách se chci zbavit index.htm, takže myslím, že by to mělo sedět.
<HTML>Neuvedla jsi adresu webu, takže se nemůžu sama mrknout. Můžeš sem nakopírovat, jak máš celé to přepisování adres napsáno?</HTML>
Ahoj, mám tam tohle....
RewriteEngine On
RewriteCond %{HTTP_HOST} ^hella\.prodejce\.cz
RewriteRule (.*) http://www.hella.prodejce.cz/$1 [R=301,QSA,L]
RewriteRule ^index.HTM$ http://www.hella.prodejce.cz/ [R=301,L]
<HTML>No, jestli se chceš zbavit index.htm, tak bys tam měla mít buď to NC, tedy [R=301,NC,L] nebo index.htm a ne index.HTM. Takhle to index.htm z adresy určitě neodstraní.</HTML>
Děkuju za radu, už to funguje. Netušila jsem, že by tohle mohlo mít vliv. A ještě bych se chtěla zeptat, jestli je považováno za duplicitní stránky
http://www.hella.prodejce.cz/drevene_postylky.htm
http://www.hella.prodejce.cz/drevene_postylky_cena.htm
http://www.hella.prodejce.cz/drevene_postylky_nazev.htm
Jde o identickou stránku, jen jsou tam položky jinak seřazené.
=Lucie=
Mimochodem jsem to psal v 27. 01. 2009 21:55...
Jo, tak jestli tohle jsou pro vyhledavace stejne stranky uz fakt nevim - mozna se to dozvis v Google Webmaster Tools (ale tim si nejsem jisty..)..
Osobne bych to nechal spis napr takto..:
drevene_postylky.html
drevene_postylky.html?cena
drevene_postylky.html?nazev