KB111: Installing Character Server on Linux

On Linux, the Character Server consists of a single CGI application called 'animate'.

To integrate it with apache, you can unzip it into the /var/www/cgi-bin directory, then add the following line to your apache config file (/etc/httpd/conf/httpd.conf):

ScriptAliasMatch "^/animate(.*)" "/var/www/cgi-bin/animate$1"

Now, requests to

http://yourserver.com/animate

will be routed to the animate cgi app. Next, you will need to give it execute permissions, with

$ sudo chmod a+x /var/www/cgi-bin/animate

The 'animate' app has a dependency on Cairo 2, a vector rendering engine. To install this dependency use:

$ sudo yum install libcairo2

Next, you will need 3 subdirectories under the 'animate' executable named 'library', 'partials', and 'results'.

The 'library' directory must contain the two subdirectories 'characters' and 'addons'. The contents of these can be populated from the Characters and Addons directories of a Character Builder installation, located under "Program Files (x86)\Character Builder\Library". This is one of the two locations where character and addon products are installed - the other location is "Users\username\AppData\Roaming\Media Semantics\Library".

animate library characters SusanHead ... addons RW2HeadHairPack1 ... partials results

The 'partials' and 'results' folders are caches, and should be made writable as follows:

$ cd /var/www/cgi-bin/ $ sudo chgrp apache partials $ sudo chgrp apache results $ sudo chmod g+rwx partials $ sudo chmod g+rwx results

The 'library' tree will need read+execute permissions on all folders and read permission on all files.

$ sudo -R chgrp apache library $ sudo chmod -R g+rX library

Finally, you can set up a config file. The 'animate' executable will load '/etc/animate/conf/animate.conf' on each run. The main reason for using a config file is to specify whether results are cached, and a list of domain names that the API can be called from, with the 'domains' parameter:

cacheresults=true domains=mydomain.com,yourdomain.com

Without a 'domains' entry, requests from any domain will be honored.





Copyright © 2018 Media Semantics, Inc. All rights reserved.
Comments? Write webmaster@mediasemantics.com.
See our privacy policy.