session-ids
18 Mar `15 SEO

Magento URLs en Session ID’s (SID)

Session ID’s of SID en Magento, het blijft een lastige combinatie. Regelmatig krijgen wij vragen van webshop eigenaren die ongewenst SID’s zien verschijnen in hun shop URLs. Uiteraard willen wij niet dat deze “vieze” URLs met SID worden geïndexeerd. Op deze manier is een pagina via een oneindig aantal verschillende URL’s bereikbaar, Duplicate Content met hoofdletters! Ik ga hier in op het waarom van session ID’s en hoe je deze kunt voorkomen in Magento door een correcte Magento url.

Een SID wordt door Magento vaak gebruikt in een multistore set-up. Een cookie gaat namelijk verloren wanneer je tussen verschillende domeinen switcht. Om er toch voor te zorgen dat de reeds toegevoegde artikelen in het winkelmandje blijven zitten en andere gebruikersvoorkeuren bewaard blijven, geeft Magento een SID. Maar wat nu als je helemaal geen multistore hebt en deze URLs al helemaal niet in de front-end wilt tonen? Waarom ontstaan deze URLs dan toch? Het antwoord ligt in het verlengde van de shop switch. Wanneer de site wordt bezocht via een variant van de URL die niet de base URL is, behandelen zoekmachines dat als twee verschillende sites. Een berucht voorbeeld hiervan is de www en non-www versie van een site. Het is dan ook van belang de base URL goed in te stellen in Magento en daarbij een bewuste keuze te maken voor of www of non-www en vooral daarna niet meer te switchen.

SID instellingen in Magento

Om SID’s in Magento webshop URLs te voorkomen, is het belangrijk dat de Base URL goed staat ingesteld. Ga naar Systeem > Configuratie > Web en kijk of de onveilige (http) en onveilige Base URL goed staan ingesteld (met www / zonder-www). Ga vervolgens naar het tabje “Instellingen sessievalidatie” (ook onder Web) en zorg dat gebruik SID in front-end op “nee” staat.

Instellingen .htcaccess

Met de juiste Magento instellingen ben je er nog niet. Wanneer iemand via een verkeerde URL op bijvoorbeeld een blog of forum op de site binnenkomt, wil je dat deze bezoeker wordt geredirect naar de juiste versie van de URL. Dus bijvoorbeeld wanneer je Base URL met www is, maar iemand komt binnen via een URL die geen www bevat, moet deze correct worden doorverwezen. Dit doe je door de juiste lijn code toe te voegen in de .htaccess file. Ga naar de .htaccess en zoek “RewriteEngine On”. Voeg de volgende code toe of pas de bestaande code aan naar het volgende.

Base URL met www
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.jouwdomein\.nl$ [NC]
RewriteRule ^(.*)$ http://www.jouwdomein.nl/$1 [R=301,L]

Base URL zonder www
RewriteEngine on
RewriteCond %{HTTP_HOST} !^jouwdomein\.nl$ [NC]
RewriteRule ^(.*)$ http://jouwdomein.nl/$1 [R=301,L]

Nu ondervang je iedereen die via een verkeerde verwijzing op een andere dan de basis URL binnenkomt. Door dit verkeer correct door te verwijzen, worden er geen SID’s meer gegenereerd en krijgen deze bezoekers geen SID in de URL mee.

Category: Magento, Web development, Webshops