Autor Zpráva
petr_1
Profil *
Ahoj,
chtěl bych se zeptat, zda je pro vyhledávací roboty rozdíl mezi mod_rewritem a použítím chybové stránky 404, samozřejmě se správnými hlavičkami.
Řekl bych, že by to robot vůbec neměl poznat, řekne si o stránku, dostane ji a co je mezi tím, do toho nevidí - je to tak nebo se pletu? Čili moje hlavní otázka zní - může robot penalizovat použití str. 404? Díky.

pk
Marty
Profil
Máte-li na mysli přepisování URL adres, tak asi takto:

Tak především pokud máte možnost rozhodnout se, co z toho si vybrat, zvolte v každém případě mod_rewrite. Ten je primárně určen pro přepisování adres a díky tomu má i větší možnosti.

Penalizovat by bot rozhodně neměl, to by pak přišli velmi zkrátka weby, které nemají možnost použít mod_rewrite a přesto chtějí mít pěkné URL. Teoreticky by to ani nemusel poznat, ale musí se samozřejmně nastavit správně hlavičky.
Pachollini
Profil
V zásadě se nepleteš, jenom záleží, jak se ta chybová stránka chová.
Např. bych se snažil vyvarovat toho, aby posílala nějaké přesměrování.
petr_1
Profil *
Ok, díky, to jsem chtěl vědět. Dělám např. to, že někam přesměrovávám cca 500 adresářů, dalších 500 přesměrovávám jinam, html soubory zase jinam. Na to se mi zdá vhodnější 404, kterou můžu naprogramovat přesně dle svých potřeb - možná je to ale tím, že do mod_rewritu moc nevidím a jeho možnosti neznám. Nicméně nedokážu si představit, jak pracuje s dynamicky generovaným polem, jedině že bych přímo .htaccess generoval, a to už mi přijde docela zběsilý.
Kajman_
Profil *
Na větší dynamické přepisování se může použít programová přepisovací mapa, ale s úspěchem lze použít i jednoduché přepisovací pravidlo a rozparsování adresy nechat plnně na php - stejně jak u řešení s chybovou stránkou.
petr_1
Profil *
Myslíte že je možné pomocí mod_rewritu přesměrovat neexistující adresář na konkrétní soubor o úroveň výš? Díky.
Kajman_
Profil *
Myslím, že ano.
petr_1
Profil *
Ok, díky - a teď nečekaná otázka :-) Můžete prosím napsat jak?
samuraj
Profil *
neslo by to takto? :)
RewriteRule http://www.dmn.tld/1/2/3/ http://www.dmn.tld/1/
Kajman_
Profil *
Možná by to mohlo být takto:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^(.*)/[^/\.]+/?$ $1/konkretni.soubor [R=302,L]

Ale je težké rozlišit, zda se jedná o neexistující adresář nebo neexistující soubor, tak tam je jen test na tečku. Každopádně si myslím, že je lepší udělat pěknou chybovou stránku.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0