Hallo allemaal,
Op mijn website maak ik gebruik van .htaccess om wat nettere links te creëren voor google. Nu zit hier een kleine fout in. Ik heb namelijk o.a. de volgende regels code in de .htaccess staan:
RewriteRule ^nl/articles/?$ index.php?lang=nl&p=articles [L,QSA]
RewriteRule ^nl/articles/(\d+)/(.*)$ nl/articles/?lang=nl&a=$1 [L,QSA] |
|
In de bovenstaande links wordt op de plek van de (\d+) een id van het artikel geplaatst, zodat de .php pagina weet welk artikel hij uit de database moet lezen. Op de plek van de (.*) komt de titel van het artikel (ook uit de database gehaald, maar hier zijn rare tekens weggehaald en spaties vervangen door dashes).
Met deze methode wordt er een ander artikel (of een melding van 'kon artikel niet vinden') weergegeven als je op de plek van het ID, het getal verandert. Maar het gedeelte NA het ID (de titel van het artikel), mag gewoon verandert worden, hier wordt namelijk door de PHP pagina niet naar gekeken en er wordt dus altijd hetzelfde artikel weergegeven.
Door het bovenstaande probleem KAN ik dus last krijgen van duplicate content, althans dat neem ik aan? Mocht er ooit een site zijn die een fout heeft gemaakt in een link die naar mijn website linkt, dan komt men op dezelfde pagina met een verkeerde link....
Nu heb ik voor DIT probleem een heel simpele oplossing. Ik laat de PHP pagina ook naar de titel kijken en indien deze verkeerd is, een foutmelding te geven. Mijn vraag aan jullie of dit een meest geschikte oplossing is. Ik kan namelijk zo geen andere oplossing bedenken dat dit met .htaccess opgelost kan worden.
Maar nu blijf ik toch nog met één probleem zitten, in de bovenstaande code. Namelijk de laatste slash. Op al mijn pagina's kan men naar de pagina gaan MET of ZONDER een slash op het einde van de link (bv. erikvandeven.com/test/ of erikvandeven.com/test geeft dezelfde pagina). Zijn er oplossingen hiervoor door men automatisch door te verwijzen naar erikvandeven.com/test/ indien men naar erikvandeven.com/test surft??