Chuyển đến nội dung chính

[CONFIGURATION] Configure the dispatcher for CQ


Download the dispatcher corresponding to apache2 version.

Here we downloaded file dispatcher-apache2.4-linux-x86-64-4.1.8.tar.gz for ubuntu 14.04 64bit. After download finish, we extract this file.
Screenshot from 2015-01-05 18:14:00.png

  1. Install apache2 (Ubuntu):

sudo apt-get install apache2

  1. Copy file dispatcher-apache2.2-4.1.8.so into /usr/lib/apache2/modules (need sudo)

  2. Copy file dispatcher.any into /etc/apache2/conf, and modify the render to:

/renders
     {
     /rend01
       {
       # Hostname or IP of the render
       /hostname "localhost"
       # Port of the render
       /port "4502"
       # Connect timeout in milliseconds, 0 to wait indefinitely
        /timeout "0"
       }
     }

  1. Open file /etc/apache2/apache2.conf and:

Add these content at the end:

<IfModule disp_apache2.c>
# location of the configuration file. eg: 'conf/dispatcher.any'
DispatcherConfig conf/dispatcher.any

# location of the dispatcher log file. eg: 'logs/dispatcher.log'
DispatcherLog /var/log/apache2/dispatcher.log

# log level for the dispatcher log
# 0 Errors
# 1 Warnings
# 2 Infos
# 3 Debug
DispatcherLogLevel 3

# if turned to 1, the dispatcher looks like a normal module
DispatcherNoServerHeader 0

# if turned to 1, request to / are not handled by the dispatcher
# use the mod_alias then for the correct mapping
DispatcherDeclineRoot 0

# if turned to 1, the dispatcher uses the URL already processed
# by handlers preceeding the dispatcher (i.e. mod_rewrite)
# instead of the original one passed to the web server.
DispatcherUseProcessedURL 0

# if turned to 1, the dispatcher does not spool an error
# response to the client (where the status code is greater
# or equal than 400), but passes the status code to
# Apache, which e.g. allows an ErrorDocument directive
# to process such a status code.
DispatcherPassError 0
</IfModule>
<Directory />

<IfModule disp_apache2.c>
# enable dispatcher for ALL request. if this is too restrictive,
# move it to another location
SetHandler dispatcher-handler
</IfModule>

Options FollowSymLinks
AllowOverride None
</Directory>

Uncomment the line:

LoadModule dispatcher_module /usr/lib/apache2/modules/dispatcher-apache2.2-4.1.8.so

Run apache2: sudo /etc/init.d/apache2 start
Or restart: sudo /etc/init.d/apache2 restart
  1. Config dispatcher.any to cache:

docroot "/var/www/foxtel/"  là thư mục chứa các file cache. (lưu ý phải set quyền đầy đủ cho thư mục này)
/allowAuthorized "0" chuyển thành /allowAuthorized "1"

  1. Configure rules to cache:

Picture1.png

Syntax :   /0000 { /glob “*”  /type “allow” }  
/0000 => the order of the rule,
/glob "*" => file type to approve
/type "allow" => "allow" or "deny"
Example:
/0000
         {
         # Disallow any caching by default and subsequently allow caching
         # for content that may be cached although requested with authorization
         # information present in the request
         /glob "*"
         /type "deny"
         }
       /0001
         {
         # Allow caching of requests to /libs
         /glob "/libs/*"
         /type "allow"
         }
       /0002
         {
         # This contains user information
         /glob "/libs/cq/security/userinfo.*"
         /type "deny"
         }
       /0003
         {
         # This page contains a "Welcome, User XXX" message
         /glob "/libs/cq/core/content/welcome.*"
         /type "deny"
         }

Reference:
http://docs.adobe.com/docs/en/dispatcher.html

Nhận xét