въпрос относно техника на индексация от ботове

stoqnski

Registered
Цитат от Google:
If you decide to use dynamic pages (i.e., the URL contains a "?" character), be aware that not every search engine spider crawls dynamic pages as well as static pages. It helps to keep the parameters short and the number of them few .
(съвет относно SEO от техни faq секции ...
Update: актуализира се 03/20/2013)



Но тук възниква голям проблем и недоразбиране: ако сайта ти е базиран на $_GET заявки т.е. нещо от типа wtf.com/view.php?id=43 как да съчетая .htacess файла ( в частност "Rewrite rules.." ) и robots.txt ( в частност "allow & disallow" ) за да получа хубаво индексиране?

Това което искам да направя е :
в .htaccess файла да напиша някакво правило , което от view.php?id=$id да прави в /view/$title/ (не знам дали е възможно)
А в robots.txt :
Allow: /view/$
Disallow: view.php$ (т.е. бота да обхожда /view/web-tourista кърти/ , но да не обхожда view.php?id=44 (новина с пореден номер 44 и $title = web-tourista кърти ) и така да получа пълно съответствие за това правило на Google от горния цитат :)

Какво мислите за тази техника ?
Или можете ли да ми дадете пример да я доразвия ?
 
stoqnski каза:
Цитат от Google:
If you decide to use dynamic pages (i.e., the URL contains a "?" character), be aware that not every search engine spider crawls dynamic pages as well as static pages. It helps to keep the parameters short and the number of them few .
(съвет относно SEO от техни faq секции ...
Update: актуализира се 03/20/2013)



Но тук възниква голям проблем и недоразбиране: ако сайта ти е базиран на $_GET заявки т.е. нещо от типа wtf.com/view.php?id=43 как да съчетая .htacess файла ( в частност "Rewrite rules.." ) и robots.txt ( в частност "allow & disallow" ) за да получа хубаво индексиране?

Това което искам да направя е :
в .htaccess файла да напиша някакво правило , което от view.php?id=$id да прави в /view/$title/ (не знам дали е възможно)
А в robots.txt :
Allow: /view/$
Disallow: view.php$ (т.е. бота да обхожда /view/web-tourista кърти/ , но да не обхожда view.php?id=44 (новина с пореден номер 44 и $title = web-tourista кърти ) и така да получа пълно съответствие за това правило на Google от горния цитат :)

Какво мислите за тази техника ?
Или можете ли да ми дадете пример да я доразвия ?
За да направиш
site.com/news.php?id=134
във site.com/news/title/
трябва да направиш едно поле slug което реално да обръща заглавието във този вид:
zaglavieto-e-tuk-i-tuk , и после вместо да търсиш по ID ще търсисш новините по SLUG
тоест
$_GET['slug'] (примерно news.php?slug=test-title-tuk)

select * from news where slug=$slug
където $slug e взето от $_GET test-title-tuk

За htaccess
Код:
RewriteRule ^news/([a-zA-Z0-9]+)/$ news.php?slug=$1 [L]
site.com/news.php?slug=zaglavieto-tuk-za-test
става site.com/news/zaglavieto-tuk-za-test/



За robots.txt няма какво да се притесняваш , ако не дадеш някъде линк към news.php?id=XX реално няма как да го индексира... все пак google bot търси по линковете в сайта а не по директории като ги налучква...
 
и каква е разликата между твоето $_GET['slug'] и моето $_GET['id'] ?

А относно robots.txt искам да подходя много прецизно и изчетох 1 милион текстове ...
 
stoqnski каза:
и каква е разликата между твоето $_GET['slug'] и моето $_GET['id'] ?

А относно robots.txt искам да подходя много прецизно и изчетох 1 милион текстове ...
Е от цялото изписано "есе" не успя ли да намериш разликата?
Вместо да се взима news.php?id=123
то реално е news.php?slug=tuk-zaglavie
и после в .htaccess се прави правило за преработка на адреса... всичко точно ясно и кратко съм написал ,погледни пак поста.
Иначе за роботс ти си прецени,но аз лично до сега съм нямал проблеми с него,просто никъде не давам линка които не искам да се индексира,и то си индексира само линковете от тип sait.com/neshto/zaglavie/

:)
 
Схванах на къде биеш най-после :D , но пък от към SQL injection как да обработя $_GET['slug'] ?
при ID е лесно , правя го така :
$getid = (int)$_GET['id'] , защото винаги ще приема такива стойности , а кога slug ще е "Новина-от-този-тип -к ато -текст " ?
 
Aми проверяваш още в htaccess за a-z0-9 по същия начин и в php може да правиш проверка тоест,самия слъг да съдръжа само a-z или 0-9
може и нда кирилица но аз лично не го препоръчвам.
:)
 

Горе