Spiderglobe, De nederlandse talige informatie website over website optimalisatie tips en trucs

  

  Voorpagina Over Spiderglobe    Links    Internet marketing & website optimalisatie
Optimalisatie technieken voor zoekmachines en websites
Optimaliseren van website's

Zoek functionaliteit in websites



Zoek functionaliteit in websites

 

>> Optimalisatie website

Hoe een zoekmachine omgaat met een dynamische webpagina

Een dynamische webpagina wordt op het moment van opvragen door een gebruiker op de server aangemaakt, meestal vanuit een database. Dit tot in tegenstelling van een statische HTML pagina, welke fysiek op de server in een directory aanwezig is. De dynamische pagina bevindt zich dus niet op de server maar wordt (vaak) aangemaakt vanuit een database omgeving. Voorbeelden van zulke dynamische website omgevingen zijn php, asp, jsp, Cold fusion, Lotus Notes/Domino.

Zoekmachines gaan in het algemeen anders om met een website die bestaat uit dynamisch opgemaakte pagina's dan met een website die bestaat uit statische pagina´s. Wordt een website met statische pagina´s over het algemeen in het geheel geindexeerd dan loop je bij een dynamische website de kans dat dit niet het geval is en dus niet in een zoekmachine voorkomt.

Een dynamische pagina kan aan de hand van de volgende kenmerken worden herkend:

  • een URL waarin CGI variabelen zijn opgenomen, voornamelijk bedoelt voor de navigatie. Voorbeeld van zo'n url is www.eenwebsite.nl/view.jsp?&openwindow=1&article=20. Kenmerkend voor het gebruik van CGI variabelen zijn de tekens "?", "!", "%" en "&" in een URL.
  • In de fysieke http header bevinden zich geen waarden voor o.a. de modified date en creation date (deze is leeg, of heeft de datum van het moment van opvragen). De modified waarde kan je bijvoorbeeld bekijken middels netscape (tja wie heeft deze browser nog) middels de view -> page info optie. -> general tab.

Waarom behandeld een zoekmachine een dynamische website anders?

De reden waarom een zoekmachine een dynamische anders behandeld is het feit dat de pagina dynamisch wordt aangemaakt op het moment van opvragen van de pagina. Zo heb je de mogelijk om per (soort) gebruiker verschillende pagina's te tonen (zie de pagina over cloaking) maar kan je ook andere, enge dingen dynamisch laten aanmaken, zoals bijvoorbeeld een kalender, die je oneindig kan laten doorbladeren tot in de volgende eeuw. Van beide aspecten (cloaking en het oneindig kunnen aanmaken van pagina's) zijn zoekmachine's niet zo gecharmeerd: zo wordt cloaking wordt vaak gezien als spam en bovendien heeft een zoekmachine wel meer te doen dan het indexeren van een kalender. Overigens is het 2e punt (in een loop dynamisch aanmaken van nieuwe pagina's) vaak geen probleem meer omdat de meeste zoekmachines slechts een beperkt aantal pagina's indexeren en dan verder gaan met een andere site.
Een ander probleem bij dynamische websites (vooral bekend bij Lotus Notes/Domino) is dat er verschillende ingangen (lees url's) kunnen zijn naar een en hetzelfde document. Dit doordat er verschillende toegangspaden (in domino views) naar 1 document kunnen zijn. Hoewel de meeste (goede) zoekmachine automatische dubbele pagina's herkennen dmv checksums, kan je begrijpen dat een zoekmachine zal dit beschouwen als spam: je tracht immers 2x dezelfde inhoud te submitten bij de zoekmachine onder een andere url. 1x raden wat de zoekmachine dan (automatisch) doet.

M.a.w. zodra een zoekmachine een dynamische URL ziet stop deze vaak met het indexeren. Een aantal zullen nog wel de dynamische pagina indexeren maar zullen bijvoorbeeld geen links vanaf de dynamische pagina volgen, om de hierboven genoemde redenen.

Hoe om te gaan met een dynamische website?

Zorg voor een "normale" url:
Er zijn een aantal goede manieren om de hierboven genoemde problemen te omzeilen. Het belangrijkste is in ieder geval dat de URL op een "normale" manier eruit dient te zien. In het geval van het eerder genoemde voorbeeld: www.eenwebsite.nl/view.jsp?&openwindow=1&article=20 kan de url bijvoorbeeld worden vertaald naar www.eenwebsite.nl/window/article/20 waar een zoekmachine geen problemen mee heeft. Om een normale URL te bereiken zijn er een aantal mogelijkheden:

  • In Coldfusion is dit een configuratie instelling. Het vraagteken "? " in de URL zal dan automatische worden vervangen door een slash teken "/"
  • Voor ASP zijn er modules te koop die voor de vertaling van de URL zorg dragen. Ook in dit geval wordt het vraagteken vervangen door een slash. Een voorbeeld van zo'n module is XQASP
  • Een andere mogelijkheid is het gebruik van de apache webserver met de module mod_rewrite. M.b.v. deze module kan je ervoor zorgen dat een URL wordt herschreven naar een "goede" url patroon. Dit kan ook voor dynamische websites URL's zoals bijvoorbeeld PHP / JSP. Het herschrijven van een URL geschiedt middels het toepassen van een stukje "rule" in de http.conf file, wat tevens een nadeel is voor een heleboel website staan op een shared hosting omgeving waar je de http.conf niet mag / kan wijzigen. Zie meer informatie hierover op: A Beginner's Guide to URL Rewriting with mod_rewrite
  • Mocht je in het vorige geval de http.conf niet kunnen wijzigen of in het geval dat de mod_rewrite niet is geinstalleerd dan kan je m.b.v. de apache webserver nog steeds goed aan de slag. In de apache webserver is het namelijk mogelijk dat in het path van een URL een script wordt gezet die dan wordt uitgevoerd voordat er een 404 pagina wordt aagemaakt. In de volgende URL wordt het script article.php uitgevoerd.
    www.eenwebsite.nl/publicatie/article.php/niewsbericht/20
    In het script article.php kan vervolgens het "achterliggende path" van de URL worden uitgevraagd welke de feitelijke parameters zijn van het document. In dit geval zijn er 2 parameters, nml het type document en het document id. M.b.v. een kleine wijziging in een php script is het dus mogelijk om gewoon variabelen in de URL te gebruiken echter op een normale manier. Vervolgens kan het desbetreffende article dan worden getoond. Stukje PHP code om de URL uit te lezen:

    # Read the URL and get the variables from it..
    $var_array = explode("/", $PATH_INFO );
    Global $var_array;

    # documents type are nieuwsberichten and publicaties
    $doc_id = $var_array[2];

    Zie het artikel van een uitgewerkt voorbeeld over php en zoekmachine optimalisatie op phpbuilder.com

Zorg voor één of meerdere statische sitemap pagina´s
Mocht je niet in staat zijn om een normale URL te realiseren met één van de hierboven genoemde oplossingen dan heb je nog altijd het alternatief om 1 (grote) statische sitemap pagina aan te (laten) maken. In deze sitemap pagina zijn vervolgens alle (of een selectie van een aantal) links opgenomen naar de documenten die je wilt laten indexeren. De links op deze pagina hoeven dus niet persee aan de normale URL norm te voldoen. Immers een aantal zoekmachines volgen wel dynamische links vanaf een statische pagina (en indexeren deze), maar zullen geen links volgen vanaf een dynamische pagina zelf. Overigens zijn er een flink aantal hulpmiddelen via het internet verkrijgen voor het automatisch aanmaken van een statische sitemap pagina van je website.

Heb je andere oplossingen voor dynamische URL´s laat het ons weten en we zullen je oplossing indien toepasbaar opnemen met bronvermelding in deze pagina.