vrijdag, december 02, 2005

domeinnaam en url (rewrite)

de domeinnaam

Een ander belangrijke eigenschap van de website ivm zoekmachine optimalisatie of pagina is de domeinnaam waaronder ze te vinden is. Het belangrijkste keyword komt best in de domeinnaam voor. Vaak is dit bijvoorbeeld een bedrijfsnaam. Als je bijvoorbeeld hoog wilt scoren voor Quick, dan kies je best voor Quik.tld.

Wat als je bedrijfsnaam nu uit meerdere woorden bestaat? Je schoonheidssalon heet bijvoorbeeld Perfect Body. Dan kan je best kiezen voor het streepje tussen de twee delen. perfect-body.be is dus beter dan perfectbody.be. Dat komt omdat de zoekmachines woorden die verboden zijn met een streepje lezen als een samenhangende woordgroep. Ze zien perfect-body dus als "perfect body" en perfectbody als ... perfectbody.

de subdomeinen

Subdomeinen worden door de zoekmachines aanzien als aparte domeinen. Wanneer je dus met verschillende subdomeinen zit, worden die aanzien als aparte websites. Je kan die sites dan interlinken, zodat ze elkaar voeden met links. Uiteraard moet je ook opletten dat je geen dubbele informatie beschikbaar stelt. Dan treedt de dupblicate content filter in werking en zal slechts een van de sites krediet krijgen voor de content. De kans is er dan dat de andere site een beetje naar achteren geschoven wordt.

oppassen met de www!

Er is heel weinig dat andere mensen kunnen doen om jouw site naar beneden te halen in de zoekmachine resultaten. Maar er is een ding dat werkt en waar je jezelf voor moet behoeden. De situatie komt voor wanneer www.website.com dezelfde resultaten geven als website.com, zonder dat er wordt doorverwezen, of toch zeker zonder dat er wordt doorverwezen met een zoekmachine-vriendelijke 301 Redirect.

Naar deze situatie wordt verwezen als "Search Engine Sabbotage". Een volledige uitleg vind je op http://www.threadwatch.org/node/2817 . Het komt er op neer dat wanneer zowel de www. als de versie zonder www. (bvb www.vanderhovenss.be en vanderhovenss.be) dezelfde pagina weergeven (door technische instellingen op de server), dit door Google als twee aparte domeinen en dus sites wordt behandeld. Google zal dan de duplicate content filter activeren en de sites zullen elks apart in de zoekresultaten terecht komen, elks met een lagere ranking dan wanneer slechts ��n van beiden in de resultaten terecht zou komen.

Om dit te vermijden moet je een van de twee versies (bvb. diegene zonder de www) laten doorverwijzen naar de andere versie (bvb die met de www). Dit moet natuurlijk op een zoekmachine vriendelijke manier, met een 301 Permanente redirect. Dit kan bijvoorbeeld met php code of in de htaccess.

Met php code kan een redirect er als volgt uitzien:


< ?php if ($_SERVER['HTTP_HOST'] != "www.example.com") {

header("HTTP/1.1 301 Moved Permanently");

header("Location: http://www.example.com".$_SERVER['REQUEST_URI']);

exit; }

else {

// your usual HTTP headers go here

};

? >



Voor de redirect in de htaccess stond er op SEOMoz een interessante link naar threadwatch.org (zie boven) waarin volgende code werd vermeld (wordt onder ander gebruikt op vanderhovenss.be :



#------------------------------------------

# First optional line, include only in case of errors:

RewriteEngine On

# Second optional line, include only in case of errors:

Options +FollowSymLinks

# Optional start tag, requires use of corresponding end tag as well

< IfModule mod_rewrite.c >

# ----------------- the real stuff starts here

# IF there's a host field at all, AND

RewriteCond %{HTTP_HOST} .

# IF domain does not start with www, AND

RewriteCond %{HTTP_HOST} !^www\.threadwatch

# IF subdomain is not another one of those you like

RewriteCond %{HTTP_HOST} !^sub1\.threadwatch [NC]

RewriteCond %{HTTP_HOST} !^sub2\.threadwatch [NC]

RewriteCond %{HTTP_HOST} !^sub3\.threadwatch [NC]

RewriteCond %{HTTP_HOST} !^sub4\.threadwatch [NC]

RewriteCond %{HTTP_HOST} !^sub5\.threadwatch [NC]

# THEN redirect everything to an appropriate location

RewriteRule (.*) http //www.threadwatch.org/$1 [R=301,L]

# ----------------- the real stuff ends here

# Optional end tag, only if you have used the optional start tag

< /IfModule >

#------------------------------------------



De andere pagina's met mod rewrite

Ook de andere pagina's kan je best niet zo laten indien ze dynamisch gegenereerd worden. Meestal zal je pagina's krijgen in de vorm:

index.php?page=hoofdpagina&sub=subpagina&id=23

Dit is niet aan te raden voor opname in de zoekmachines. Veel zoekmachines hebben het niet zo met dynamische url's en zullen de url's niet opnemen in hun index. Google formuleert het in zijn tips voor webmasters als volgt:

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.

Vooral wanneer er een SESSIONID in de url wordt bijgehouden zullen de url's niet opgenomen worden. Er wordt ook gezegd dat url's met id= niet worden opgenomen, maar dat is verkeerde informatie. De nieuwsartikels op vanderhovenss.be worden voorlopig nog op deze oude manier benaderd. Een voorbeeld van een nieuwsbericht is dat van "Google straft msn.com?", met als url: http://www.vanderhovenss.be/index.php?page=nieuws&id=69. Dit artikel werd bijvoorbeeld opgenomen in de index van google. Net als alle andere nieuwsartikels.

Beter is het dus om met mod rewrite de verschillende url's te herschrijven naar beter leesbare url's. Dit is bijvoorbeeld toegepast bij De Hongerkiller. In plaats van iets als index.php?pagina=frietkraam is de url nu http://www.dehongerkiller.be/frietkraam. Omdat frietkraam nu mee in de url voorkomt krijgt deze url meer krediet voor het keyword frietkraam. Bovendien is de url zoekmachinevriendelijk en kan hij door alle zoekmachines zonder meer geindexeerd worden. Sommige seo-consultants kiezen ervoor om met mod rewrite de url te herschrijven naar www.domein.tld/pagina.htm . Ze gaan er van uit dat .htm bestanden beter geindexeerd worden omdat ze statisch zijn. Op fora wordt toch steeds tegengesproken dat dit waar zou zijn en ikzelf heb ook niet die indruk.

Een voorbeeld van zo'n rewrite (anders dan in het vorige voorbeeld) is bijvoorbeeld:

RewriteRule ^sitemap* index.php?page=sitemap

Je kan dan met /sitemap verwijzen naar de sitemap!

Herschrijven die url's dus!!

Geen opmerkingen: