Herschrijven die url
Dynamische maar nikszeggende urls van het type www.mijnmuziekwinkeltje.nl/muziek.php?m=cd&type=hm&id=55 hebben me altijd al mateloos geïrriteerd. Aangezien ik nooit de moeite heb genomen om uit te zoeken hoe ik (met behulp van mod_rewrite) deze cryptische monsters het beste in beschrijvende links als www.mijnmuziekwinkeltje/cd/metal/rammstein/ om kon zetten, bleef ik ook op mijn eigen websites tegen die hatelijke query strings aankijken.
Het feit dat één van mijn sites op een Internet Information Server draait en ik van het bestaan van een oplossing voor het herschrijven van links onder IIS niet afwist droeg niet bij aan aan een probleemoplossend houding mijnerzijds.
Bij toeval stuitte ik gisteren op de IIS addon isapi rewrite. Isapi rewrite is het IIS equivalent van de Apache module mod_rewrite. En aangezien mijn hosting provider Isapi rewrite geheel en al blijkt te ondersteunen was duidelijk dat ik aan de slag moest. Het slappe excuus om het niet te doen (volgens mij kan dat niet hoor, vriendelijke links met iis) was weggevallen.
Achteraf lijkt het altijd meegevallen, maar het kostte me toch wel een paar uur om mijn scriptcode-soepje zo op smaak te brengen dat isapi rewrite het lust.Waar ik ook nog even mee geworsteld heb is het gebruik van een numerieke id in de url. Absoluut beschrijvend, maar wel zo makkelijk omdat er minder code aan te passen was. Natuurlijk zou de blogtitel als identifier symantisch geschikter zijn. Maar ook gevaarlijker. Want het wijzigen van de titel van een blogpost leidt dan mogelijkerwijs tot een 404 – niet gevonden. Bovendien waren er in de titels van mijn posts nogal wat speciale karakters, die eruit gefilterd zouden moeten worden. Uiteindelijk heb ik maar voor de (mijns inziens) meest charmante maar meteen ook meest arbeidsintensieve oplossing gekozen. Door de betreffende database-tabel te voorzien van een extra veld, gebaseerd op het titelveld. Maar dan zonder vreemde tekens en met underscores tussen de woorden.
Het resultaat? Behalve wat gemoedsrust en urls die voor bezoekers makkelijk te begrijpen zijn? Hopelijk een website die binnenkort wat beter in de smaakt valt bij Googlebot en collega’s. Nu het op Apache draaiende leukvoorkids.nl nog.
Apache · Internet Information Server · ISAPI Rewrite · modrewrite · webserver
Nullbeta aka HansR babbelt deze website louter op persoonlijke titel vol. Mogelijkerwijs worden Nullbeta's standpunten niet gedeeld door de organisatie die z'n boterham belegt. Maar kan dat iemand boeien?