Magento shops worden vaak en veel geïndexeerd door zoekmachines. Zonder indexering van je website komt deze niet in de zoekresultaten van Google, Bing, Yahoo, enz. tevoorschijn. Indexering is dus belangrijk, maar helaas hebben de meeste zoekmachines de vervelende eigenschap een website te vaak te indexeren en dus enorm veel resources (BPU) gebruiken.
Met een paar simpele trucs kun je door de crawlers beter af te stellen het BPU verbruik aanzienlijk verlagen, zonder dat dit de vindbaarheid van je website vermindert!

BPU?

BPU is hetzelfde als resources, maar wordt niet gehanteerd bij Hypernode pakketten. Dus wel bij Magento Dedicated en Cluster hosting pakketten. BPU staat voor Byte Performance Unit en meet het verbruik van de servercapaciteit op onze gedeelde servers per domein (hostingpakket). Om klanten op gedeelde servers eerlijk gebruik te laten maken van de beperkte hoeveelheid technische resources, meet Byte een aantal BPU’s per website. Meer informatie vind je in het artikel Byte Performance Unit.

Wat doen zoekmachines/crawlers?

Het indexeren van webpagina’s op websites en shops wordt gedaan door een script, ook wel crawlers of spiders genoemd. Deze struinen continu het internet af op zoek naar nieuwe content om in de zoekresultaten naar boven te laten komen. De meest voorkomende zoekmachines/crawlers zijn:

  • Google – crawl-66-249-66-113.googlebot.com (bot)
  • Yahoo – b3090985.crawl.yahoo.net (bot)
  • Msn (Bing) – msnbot-65-52-110-146.search.msn.com

Een crawler vraagt een website op zoals een bezoeker dat ook doet, maar zoekt dan verder door de hele website naar wijzigingen sinds het vorige bezoek. Naast het bezoeken/indexeren van de gehele website bezoekt de crawler ook nog eens alle links op elke pagina.
Een crawler veroorzaakt dus behoorlijk wat verkeer, omdat dit proces meerdere keren per dag wordt herhaald. De load die wordt veroorzaakt door het indexeren kan behoorlijk oplopen. Gemiddeld wordt ongeveer 30 tot 40% van de load op websites veroorzaakt door crawlers en dit kan oplopen tot 95%.
Baidu
Baidu is een Chinese zoekmachine. Byte heeft de Baidu crawler voor haar gehele netwerk geblokkeerd, omdat deze onevenredig veel serverload veroorzaakte (meer dan de andere gangbare zoekmachinecrawlers samen). We begrijpen dat het blokkeren van Baidu ervoor zorgt dat websites niet meer gelezen worden door de Chinese zoekmachine, maar hebben deze blokkering doorgevoerd omdat dat de overlast die deze spider veroorzaakt voor het merendeel van onze klanten onwenselijk en sommige gevallen zelfs onacceptabel was.

Resources / BPU verlagen

Je kunt het resources/BPU verbruik verlagen, door de bezoekfrequentie van crawlers in te perken en aan te geven welke gedeeltes van de site wel en niet geïndexeerd worden. Dit kan op verschillende manieren:

  1. Een robots.txt bestand aanmaken. Hierin kun je aangeven hoe vaak en welke pagina’s van je website geïndexeerd mogen worden.
  2. In Google en Bing webmaster tools de snelheid en indexatie aanpassen.
  3. Het is mogelijk de crawlers in zijn geheel of voor gedeeltes van de site te blokkeren via meta tags of robots.txt (alleen voor gevorderden!).

Verder in het artikel wordt elke methode uitgebreid uitgelegd. Je kunt ook altijd terecht op ons blog voor meer informatie:

Robots.txt

werking robots.txt

werking robots.txt

Rechts staat een visuele uitleg over hoe een robots.txt bestand in zijn werk gaat. Bij elk bezoek van een crawler wordt eerst gezocht naar een robots.txt file, want dit bestand begeleid een crawler. Deze hoort daarom in de root van het hoofddomein te staan. Houd er rekening mee dat voor een goede SEO het belangrijk is dat de belangrijkste pagina’s wel geïndexeerd blijven worden.
LET OP: er zijn zoekmachines die zich helaas niet altijd aan een robots.txt bestand houden.

User-agent

De robots.txt kan ingezet worden voor alle webcrawlers maar je kunt er ook voor kiezen verschillende regels in te stellen per zoekmachine/crawler. In het volgende voorbeeld wordt met behulp van de “User-agent:” regel aangegeven dat Google niets mag indexeren en Bing (MSNBot) alles mag indexeren behalve /google/.

User-agent:Googlebot
Disallow:User-agent:MSNBot
Disallow:/google/

Naast de regels waarin je aangeeft wat je wel en niet geïndexeerd wilt hebben specificeer je een User-agent. De User-agent is dus de crawler waarnaar je verwijst. Als je regels voor alle crawlers in wilt stellen kan dat met de volgende regel:

User-agent:*
Disallow:/

Deze regels worden inde volgende voorbeelden gebruikt. Mocht je regels voor verschillende webcrawlers willen instellen dan staat hier een lijst met namen van robots.

Mappen afschermen

Met de onderstaande tekst in de robots.txt zal geen enkele pagina op de site geïndexeerd worden.

User-agent:*
Disallow:/

In de onderstaande regels is aangegeven dat alles geïndexeerd mag worden, behalve de inhoud van /tmp/. Daarnaast worden crawlers naar /products/ gestuurd.

User-agent:*
Disallow:/tmp/
Allow:/products/

Als deze robots.txt bijvoorbeeld de locatie http://bijvoorbeeld.nl/robots.txt heeft, dan zal in dit geval http://bijvoorbeeld.nl/tmp/ niet geïndexeerd worden.

Crawl-delay instellen

Sommige zoekmachines (Yahoo, Bing) maken gebruik van de waarde Crawl-delay, daarmee kun je instellen wat de interval tussen het opvragen van pagina’s (in seconden) moet zijn, bijvoorbeeld;

User-agent:*
Crawl-delay:5

Hier wordt aangegeven dat elke webcrawler 1 nieuwe pagina per tien seconden mag opvragen. Op deze manier kun je de intensiteit van de webcrawlers beperken. We raden aan te beginnen met een delay tussen de 1 tot 5 seconden.

Sitemap in je robots.txt

Door in een robots.txt naar een sitemap te verwijzen geef je een crawler als het ware een inhoudsopgave. Een sitemap geeft heel duidelijk aan welke pagina’s belangrijk zijn en geïndexeerd moeten worden zonder dat de hele website doorzocht moet worden. Dit verlaagt dus ook weer de load op de server en dus het BPU verbruik. Hieronder vind je een voorbeeld van hoe je doorverwijst naar een sitemap.

User-agent:*
Sitemap:http://bijvoorbeeld.nl/sitemap.xml

Hoe je een sitemap kunt maken vind je op ons blog! Sitemaps voor een betere indexatie en lagere serverload. Daar vind je ook meer informatie over hoe je eenvoudig voor Joomla en WordPress automatisch een sitemap laat genereren.

Webmaster Tools

In Google webmaster tools kun je de snelheid waarmee de Google crawlers de site indexeren beperken. Dit doe je bij Siteconfiguratie >> Instellingen >> Crawlsnelheid >> Aangepaste crawlsnelheid instellen. Kijk graag voor informatie op de pagina over Google Webmaster Tools. Je kunt je op deze pagina tevens ook aanmelden!
De zoekmachine Bing biedt ook webmaster tools aan en hier kun je aangeven op welke tijden de Bing bot je website indexeert. Als je dit op de rustige momenten laat doen, blijft alle beschikbare capaciteit op de drukkere momenten gereserveerd voor je “echte” bezoekers. Lees er meer over in het artikel: Bing webmaster tools – Indexatiebeheer.

BPU besparen met meta tags

Uit onderzoek van partners van Byte blijkt dat Google vaak de ‘layered navigation’ indexeert. BPU verbruik verminderen wordt daarom soms aangeraden door middel van ‘meta tags’ en daarnaast ook via de robots.txt file. Hieronder wordt uitgelegd hoe dit in zijn werk gaat:

Robots.txt aanpassen

Let er bij deze methode op dat je niet al het verkeer van crawlers uitsluit, omdat dit slecht is voor de SEO resultaten. Bedenk daarom van te voren welk deel van de website onder handen genomen moet worden.
Onderstaand een beproefde methode. Hiermee worden namelijk alle GET variabelen die gebruikt worden in de layered navigation verboden. Let opDit is slechts een klein deel hiervan:

# Paths (no clean URLs)Disallow: /*.js$Disallow: /*.css$Disallow: /*.php$Disallow: /*?p=*&Disallow: /*?SID=Disallow: /?___from_store=Disallow: /*___from_store=Disallow: /?dir=Disallow: /?mode=Disallow: /?limit=Disallow: /rss*Disallow: /*PHPSESSIDDisallow: /*where/*Disallow: /*order/*Disallow: /*asc/*Disallow: /*desc/*

NB voor het verbieden van de MSN bot lijkt bovenstaande niet altijd te werken. Probeer het daarom graag zonder het laatste * teken. Dit heeft in een aantal gevallen goed gewerkt!
Kijk ook graag op ons blog: Reduce Magento resources using meta tag robots voor meer informatie over meta tags.

Magento Meta tags

Zoekmachines hoeven niet alle Magento pagina’s te indexeren. In Magento kun je pagina types apart instellen. Hoe je dit instelt, kun je lezen in de blogpost Reduce Magento resources using meta tag robots.

Joomla Meta tags

In Joomla kun je eenvoudig verschillende website onderdelen of artikelen uitsluiten van indexatie middels de meta tags. Hoe je dit doet, lees je in de blogpost How to set “noindex,follow” in your robots meta tag for Joomla!.

02