This project has moved and is read-only. For the latest updates, please go here.
The concept

I. Standard Url structure

[potalalias]/[culture]/[page]/[module]?[query parameters]

Remark : In DNN 7.1 and higher the culture is part of the alias.

Module : correspond to all modules parameters.
Query parameters : is the url part with special characters like the returnurl parameter.

II. Url parts mapping table

Rewriting based on mapping table between a url part and the corresponding query parameters for cultures items, tab items, modules items.

Rule type Url part Query parameters
Culture fr language=fr-FR
Tab abous-us/contact tabid=67
Article Module dnn-version-7-features articleid=56
Property Agent module house-with-4-beds agenttype=view&propertyid=23

The mappings are stored in cache and manage the two way mapping (Friendly Urls & Rewriting).

There is a module to visalize the mapping rules : Demo mapping table

The mapping table is regenerated by : a "clear cache" command, after delay depending on the host cache parameters (bestween 20 min a 3 hours) or by cache change detection (implemented for pages & PropertyAgent).

III. Url Mapping Providers

The mapping table can be created manually or automatically by providers.

A privider can :
  1. Rewriting Urls to a Friendly Urls
  2. Redirecting old Non Friendly Urls to the new Urls

Actual List of providers

Implementing a new provider is very simple. No regular expressions. Just mappings.

Last edited Dec 30, 2013 at 10:29 AM by sachatrauwaen, version 9


No comments yet.