{"id":23741,"date":"2016-09-02T13:24:00","date_gmt":"2016-09-02T13:24:00","guid":{"rendered":"https:\/\/site.axamit.com\/?p=631"},"modified":"2026-06-23T15:49:04","modified_gmt":"2026-06-23T15:49:04","slug":"wat-zijn-aem-dispatcher-rewrite-regels","status":"publish","type":"post","link":"https:\/\/axamit.com\/nl\/blog\/adobe-experience-manager\/wat-zijn-aem-dispatcher-rewrite-regels\/","title":{"rendered":"Wat zijn AEM Dispatcher Rewrite Regels?"},"content":{"rendered":"<div class=\"custom-toc\"><ul><li class=\"h2-toc\"><a href=\"#rewrite-module\">Rewrite-module<\/a><\/li><li class=\"h2-toc\"><a href=\"#repository-mappings-tree-etc-map\">Repository mappings tree \/etc\/map<\/a><\/li><li class=\"h2-toc\"><a href=\"#resourceprovider-interface\">ResourceProvider-interface<\/a><\/li><li class=\"h2-toc\"><a href=\"#summary\">Samenvatting<\/a><\/li><li class=\"h2-toc\"><a href=\"#faq\">Veelgestelde vragen<\/a><\/li><\/ul><\/div>\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><em>Zie ook:<\/em><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"http:\/\/axamit.com\/blog\/adobe-experience-manager\/aem-dispatcher\/\" data-type=\"post\" data-id=\"2473\">Deel 1: Kort overzicht van de dispatcher en zijn doelen<\/a><\/li>\n\n\n\n<li><a href=\"http:\/\/axamit.com\/blog\/adobe-experience-manager\/dispatcher-cache\/\" data-type=\"post\" data-id=\"2487\">Deel 2. Initi\u00eble instellingen voor het inschakelen van cache<\/a><\/li>\n\n\n\n<li><a href=\"http:\/\/axamit.com\/blog\/adobe-experience-manager\/dispatcher-clear-cache\/\" data-type=\"post\" data-id=\"2488\">Deel 3. Cache-invalidatie<\/a><\/li>\n<\/ul>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Wat zijn <a href=\"https:\/\/axamit.com\/nl\/blog\/adobe-experience-manager\/wat-is-de-dispatcher-in-aem-2\/\">AEM Dispatcher<\/a> rewrite-regels? Onze AEM Gecertificeerde expert belicht de Top 5 geavanceerde manieren om de <a href=\"https:\/\/axamit.com\/nl\/blog\/adobe-experience-manager\/wat-is-de-dispatcher-in-aem-3\/\">Dispatcher<\/a> te gebruiken voor productie en ontwikkeling.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nu u weet hoe u de basisparameters van de dispatcher kunt aanpassen, is het tijd om dieper in te gaan op de geavanceerde instellingen. Deze instellingen zijn nodig om de productieomgeving te verfijnen en zullen ook nuttig zijn tijdens het ontwikkelingsproces.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hieronder beschrijf ik enkele nuttige tools voor het geavanceerd gebruik van de dispatcher:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>tools voor statische webservers\n<ul class=\"wp-block-list\">\n<li>rewrite-module<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>AEM tools voor mappings\n<ul class=\"wp-block-list\">\n<li>repository mappings tree \/etc\/map<\/li>\n\n\n\n<li>ResourceProvider Interface<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id=\"rewrite-module\">Rewrite-module<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">U kunt de rewrite-module inschakelen door de volgende regel in uw httpd.conf-bestand te decommentari\u00ebren:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>LoadModule rewrite_module modules\/mod_rewrite.so\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Initi\u00eble instellingen voor de rewrite-module kunnen er als volgt uitzien:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;IfModule mod_rewrite.c&gt;\n    RewriteEngine On\n    RewriteLog \"logs\/rewrite.log\"\n    RewriteLogLevel 9\n#    your rule 1\n#    your rule 2\n    \u2026\n#    your rule n\n&lt;\/IfModule&gt;\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Hier is een eenvoudig voorbeeld van het gebruik van de rewrite-module:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>RewriteRule ^\/en(.*)\\.html$ \/content\/geometrixx\/en$1.html &#91;R]\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Deze rewrite-regel zorgt voor een externe omleiding.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gedetailleerde en nuttige documentatie:\u00a0<a href=\"http:\/\/httpd.apache.org\/docs\/2.2\/mod\/mod_rewrite.html\" target=\"_blank\" rel=\"noopener\">http:\/\/httpd.apache.org\/docs\/2.2\/mod\/mod_rewrite.html<\/a><\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id=\"repository-mappings-tree-etc-map\">Repository mappings tree \/etc\/map<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Resource mapping wordt gebruikt om redirects, vanity URL&#8217;s en virtuele hosts voor AEM te defini\u00ebren:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\/etc\/map &#8211; resource mappings tree;<\/li>\n\n\n\n<li>\/etc\/map\/http &#8211; resource mappings voor http-aanvragen.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Mapping-definities van uw AEM-instantie zijn te vinden op:\u00a0http:\/\/host:port\/system\/console\/jcrresolver<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Voorbeeld: mapping die elke aanvraag naar\u00a0http:\/\/localhost:4503\u00a0voorziet van het \/content-voorvoegsel:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Maak een knooppunt aan onder \/etc\/map\/http met het type \u201csling:Mapping\u201d en de naam \u201clocalhost_any\u201d;<\/li>\n\n\n\n<li>Voeg eigenschappen toe aan dit knooppunt:\n<ul class=\"wp-block-list\">\n<li>Naam \u201csling:match\u201d, type \u201cString\u201d, waarde \u201clocalhost.4503\/\u201d;<\/li>\n\n\n\n<li>Naam \u201csling:internalRedirect\u201d, type \u201cString\u201d, waarde \u201c\/content\/\u201d.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Deze mapping behandelt een verzoek zoals http:\/\/localhost:4503\/geometrixx\/en\/products.html alsof http:\/\/localhost:4503\/content\/geometrixx\/en\/products.html wordt aangevraagd. Dit voorbeeld verbreekt verzoeken aan clientlibs en aan andere resources die buiten de \/content resourcestructuur zijn geplaatst.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gedetailleerde en nuttige documentatie:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/docs.adobe.com\/docs\/en\/cq\/5-6-1\/deploying\/resource_mapping.html\" target=\"_blank\" rel=\"noopener\">https:\/\/docs.adobe.com\/docs\/en\/cq\/5-6-1\/deploying\/resource_mapping.html<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/sling.apache.org\/documentation\/the-sling-engine\/mappings-for-resource-resolution.html\" target=\"_blank\" rel=\"noopener\">https:\/\/sling.apache.org\/documentation\/the-sling-engine\/mappings-for-resource-resolution.html<\/a><\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id=\"resourceprovider-interface\">ResourceProvider-interface<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">U kunt de ResourceProvider-interface gebruiken om uw eigen resourcestructuren te cre\u00ebren.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public interface ResourceProvider {\n    Resource getResource(ResourceResolver var1, String var2);\n    Iterator&lt;Resource&gt; listChildren(Resource var1);\n}\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">U kunt rootpaden instellen voor uw implementatie van de ResourceProvider:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@Properties({\n       @Property(\n               label = \"Root paths\",\n               description = \"Root paths this Sling Resource Provider will respond to\",\n               name = ResourceProvider.ROOTS,\n               value = {\"\/content\/mount\/samples\"})\n})\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Gedetailleerde en nuttige documentatie: <a href=\"https:\/\/sling.apache.org\/documentation\/the-sling-engine\/resources.html\" target=\"_blank\" rel=\"noopener\">https:\/\/sling.apache.org\/documentation\/the-sling-engine\/resources.html<\/a><\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id=\"summary\">Samenvatting<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">De drie hierboven genoemde tools bieden aanvullende verbeteringen bij het gebruik van de dispatcher:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Httpd rewrite-module;<\/li>\n\n\n\n<li>AEM mappings-structuur;<\/li>\n\n\n\n<li>ResourceProvider-interface.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">We hebben deze tools slechts kort besproken. Als u ze effectief wilt gebruiken, moet u de bijbehorende gedetailleerde documentatie voor elke tool bestuderen.<\/p>\n<\/div>\n<\/div>\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\" id=\"faq\">Veelgestelde vragen<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-do-you-restart-the-dispatcher-in-aem-\">Hoe herstart u de dispatcher in AEM?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">AEM Dispatcher is een module die draait op enterprise-klasse webservers. Op bijvoorbeeld Apache httpd 2.4.x kan de volgende opdracht worden gebruikt om deze te herstarten: sudo \/etc\/init.d\/apache2 restart.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-is-the-difference-between-rewrite-and-redirect-\">Wat is het verschil tussen rewrite en redirect?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">URL-manipulaties zoals rewrites en redirects kunnen worden gebruikt om de interne structuur van een website te verbergen, URL&#8217;s gebruiksvriendelijk te maken en verouderde URL&#8217;s af te handelen. Bij rewriting wijzigt de server de aangevraagde URL direct op basis van vooraf gedefinieerde regels, voordat de inhoud die aan de gewijzigde URL is gekoppeld, aan de bezoeker wordt geretourneerd. De oorspronkelijke URL blijft zichtbaar voor de bezoeker. Bij redirecting stuurt de server een antwoord naar de browser van de bezoeker, waarin deze wordt ge\u00efnstrueerd een andere URL aan te vragen. De browser vraagt vervolgens de nieuwe URL aan en de bezoeker ziet de pagina die aan de nieuwe URL is gekoppeld.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"what-is-the-etc-map-in-aem-\">Wat is de ETC map in AEM?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">De \/etc\/map\/-map in AEM wordt gebruikt om definities voor interne resource-mapping aan te maken. De submap \/etc\/map\/http bevat bijvoorbeeld mappings voor het HTTP-protocol die het mogelijk maken om redirects, vanity-URL&#8217;s en virtuele hosts voor AEM te defini\u00ebren.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-url-shortening-is-done-in-aem-\">Hoe wordt URL-verkorting gedaan in AEM?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">URL-verkorting kan worden gedaan met behulp van Sling Resource Resolver Factory als u eenvoudige regels wilt gebruiken, zoals het verwijderen van talrijke submappen uit de URL-string, of met behulp van Sling Mapping voor complexere scenario&#8217;s.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"how-does-sling-resolution-work-in-aem-\">Hoe werkt Sling-resolutie in AEM?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Apache Sling wordt gebruikt om inkomende aanvraag-URL&#8217;s te matchen met specifieke content in de JCR-repository. De repository heeft een hi\u00ebrarchische structuur en elk stukje content daarin heeft een lang en uniek resource-pad. Om de overeenkomende content te bepalen, past Apache Sling een set vooraf gedefinieerde regels en resource-type filters toe.<\/p>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Rewrite-module Repository mappings tree \/etc\/map ResourceProvider-interface Samenvatting Veelgestelde vragen Zie ook: Wat zijn AEM Dispatcher rewrite-regels? Onze AEM [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":5015,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[158],"tags":[],"class_list":["post-23741","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-adobe-experience-manager"],"acf":{"cta":"Give Us a Call","phone":"+1 (438) 383-6878","meta-description":"Hoe geavanceerde instellingen van de AEM Dispatcher te gebruiken om de productieomgeving te finetunen en de ontwikkeling te vereenvoudigen: HTTP rewrite module, repository mappings tree, Resource Provider Interface."},"_links":{"self":[{"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/posts\/23741","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/comments?post=23741"}],"version-history":[{"count":1,"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/posts\/23741\/revisions"}],"predecessor-version":[{"id":23742,"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/posts\/23741\/revisions\/23742"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/media\/5015"}],"wp:attachment":[{"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/media?parent=23741"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/categories?post=23741"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/axamit.com\/nl\/wp-json\/wp\/v2\/tags?post=23741"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}