How to Configure Dispatcher in AEM

Dispatcher

Adobe Experience Manager is the most popular CSM system for the content-oriented web application. Adobe Experience Manager is basically a combination of java, JCR, OSGi technology.

In this tutorial, we will learn aboutHow to configuring dispatcher in aemin Ubuntu/Linux.

Configuring dispatcher in Aem

1. First of all, in order to configure dispatcher on our system, the Apache web server should be successfully installed.
2. Then, you can download dispatcher from this link click here
3. Now copy dispatcher’s .so file from downloaded dispatcher folder and paste it to the usr/lib/apache2/modules
4. Now Copy dispatcher.any file from downloaded dispatcher folder and paste it to the etc/apache2/conf if there is no conf folder in etc/apache2 then create one.
5. Now we will configure dispatcher in apache2
6.Now edit file apache2.conf in etc/apache2. And add the following code in it. You can add full code as it is in file see the full code here.

Note: Version of .so file specified in code should be changed according to dipatcher version in following line
LoadModule dispatcher_module /usr/lib/apache2/modules/dispatcher- apache2.4-4.2.3.so

Use following apache command to start, stop or restart apache server in order to check whether your server is running:
1.systemctl start apache2
2.systemctl stop apache2
3.systemctl restart apache2
4.systemctl status apache2
Dispatcher’s log can be checked in var/logs/apache2/dispatcher.log

In the log file, you will find Dispatcher is initialized in logs that will confirm that your dispatcher is fine working.

Now configuring dispatcher in aem :
These are basic changes that we should make to configure AEM
1.Change hostname to localhost or 127.0.0.1 in /hostname
2. Change the port no in /renders rend01, 8080 to 4503
3.change docroot of cache memory in /cache where cached files should be stored with /var/www/html.
Or you can copy this whole code and paste it in the dispatcher. any file, To see the code of dispatcher.any click here.

4.Now create a dispatcher.conf file in etc/apache2/conf
and add below code :
LoadModule dispatcher_module modules\dispatcher-apache2.4-4.2.3.so
<IfModule disp_apache2.c>
DispatcherConfig conf/dispatcher.any
DispatcherLog logs/dispatcher.log
DispatcherLogLevel 3
DispatcherNoServerHeader 0
DispatcherDeclineRoot 0
DispatcherUseProcessedURL 0
DispatcherPassError 0
</IfModule>
<Directory />
<IfModule disp_apache2.c>
SetHandler dispatcher-handler
ModMimeUsePathInfo On
</IfModule>
Options FollowSymLinks
AllowOverride None
</Directory>

5. Invalidate cache from the author (configuring dispatcher flush agent) this step is performed in order to invalidate the cache
1. Go to localhost 4502/etc/replication/agents.author/flush.html
2.Open configuration for dispatcher flush by clicking on the edit
3. Go to the transport option
4. Change the Uri(localhost 80 or 81 as configured in dispatcher.any), user and password
5. In Setting, tab enable the enabled option
6. Go to triggers(check on modification, on-off time reached)

Note: Ports can be configured in ports.conf file present in etc/apache2/ports.conf. In case default port 80 is already being used.Configuring dispatcher in aem has been done

happy learning!