[Chameleon] Installation and Setup Questions...

Matthew Roberson matt at msileads.com
Wed Jun 15 16:26:26 EDT 2005


Hello,

I'm attempting to get chameleon running on OS X, and I am having a  
problem. I hope that somebody will be able to offer some helpful  
suggestions on how to resolve this problem.

The problem is:
When I attempt to load  
http://localhost/chameleon/cwc2/cwc2.php? 
service=VCG&request=GetApplication&version=0.1.0

I get the following results:

Warning: dl(): Unable to load dynamic library  
'/usr/lib/php/extensions/no-debug-non-zts-20020429/php_dbase.dylib' -  
(null) in /usr/local/lib/chameleon/htdocs/common/mlt/mlt.php on line  
251

Warning: dl(): Unable to load dynamic library  
'/usr/lib/php/extensions/no-debug-non-zts-20020429/php_dbase.dylib' -  
(null) in /usr/local/lib/chameleon/htdocs/common/mlt/mlt.php on line  
251

I am running:
MapServer version 4.4.1
Apache/1.3.33 (Darwin)
Chameleon version 2.2

I added the following to my httpd.conf file:

Alias /chameleon/admin "/usr/local/lib/chameleon/admin/htdocs"
<Directory "/usr/local/lib/chameleon/admin/htdocs/">
   AllowOverride None
   Options Indexes FollowSymLinks Multiviews
   Order allow,deny
   Allow from all
</Directory>

Alias /chameleon/docs "/usr/local/lib/chameleon/docs/html"
<Directory "/usr/local/lib/chameleon/docs/html">
   AllowOverride None
   Options Indexes FollowSymLinks Multiviews
   Order allow,deny
   Allow from all
</Directory>

Alias /chameleon/samples "/usr/local/lib/chameleon/samples/htdocs"
<Directory "/usr/local/lib/chameleon/samples/htdocs">
   AllowOverride None
   Options Indexes FollowSymLinks Multiviews
   Order allow,deny
   Allow from all
</Directory>

Alias /chameleon/cwc2/contexts "/usr/local/lib/chameleon/cwc2/contexts"
<Directory "/usr/local/lib/chameleon/cwc2/contexts">
   AllowOverride None
   Options Indexes FollowSymLinks Multiviews
   Order allow,deny
   Allow from all
</Directory>

Alias /chameleon/cwc2/templates  
"/usr/local/lib/chameleon/cwc2/templates"
<Directory "/usr/local/lib/chameleon/cwc2/templates">
   AllowOverride None
   Options Indexes FollowSymLinks Multiviews
   Order allow,deny
   Allow from all
</Directory>

Alias /chameleon/cwc2 "/usr/local/lib/chameleon/cwc2/htdocs"
<Directory "/usr/local/lib/chameleon/cwc2/htdocs">
   AllowOverride None
   Options Indexes FollowSymLinks Multiviews
   Order allow,deny
   Allow from all
</Directory>

Alias /chameleon "/usr/local/lib/chameleon/htdocs"
<Directory "/usr/local/lib/chameleon/htdocs">
   AllowOverride None
   Options Indexes FollowSymLinks Multiviews
   Order allow,deny
   Allow from all
</Directory>

My cwc2.xml file contains the following:
<app-context>
     <context-param>
         <param-name>service_instance_path</param-name>
         <param-value>http://localhost/chameleon/</param-value>
         <description>This is the URL to chameleon.php.  You can use an  
alias (i.e. /chameleon/) or an absolute URL (i.e. http://).  Note that  
if you use a URL and set it to  
http://localhost/&lt;path-to-chameleon&gt; then the app won't work from  
remote machines.</description>
     </context-param>

     <context-param>
         <param-name>server_data_path</param-name>
         <param-value>/usr/local/lib/chameleon/cwc2/data/</param-value>
         <description>This is where cached capabilities and other  
information, common to each session, should be. When a user start a new  
session, all files from that directory are copied to  
user_session_tmp_path</description>
     </context-param>

     <context-param>
         <param-name>allow_upload_context</param-name>
         <param-value>true</param-value>
         <description>Enable use of remote contexts via the service  
instance TEMPLATE= URL parameter. (true or false).</description>
     </context-param>

     <context-param>
         <param-name>allow_upload_template</param-name>
         <param-value>true</param-value>
         <description>Allow use of the 'TEMPLATE=' parameter when  
calling the CWC2 instance to specify any CWC2 HTML template url? (true  
or false)  If set to false then the value of 'default_template' config  
parameter is always used.</description>
     </context-param>

     <context-param>
         <param-name>cache_template</param-name>
         <param-value>true</param-value>
         <description>If template come from a remote server  
(http://....), the template is download from that remote server and  
saved on local server for further loading. For performace, it is  
prefered to set this value to "true". If the remote server template is  
dynamic, this value should be set to "false" so the template will be  
loaded remotely every page load.</description>
     </context-param>

     <context-param>
         <param-name>default_context</param-name>
          
<param-value>/usr/local/lib/chameleon/cwc2/contexts/world_context.xml</ 
param-value>
         <description>Default map context to load when starting this  
application</description>
     </context-param>

     <context-param>
         <param-name>default_language</param-name>
         <param-value>en-CA</param-value>
         <description>The language code to use when no language is  
requested, normally this should match the language the default template  
was designed for.</description>
     </context-param>

     <context-param>
         <param-name>default_template</param-name>
          
<param-value>/usr/local/lib/chameleon/cwc2/templates/sample_cwc2.html</ 
param-value>
         <description>Default HTML template to use with this CWC2  
instance.  Used when TEMPLATE= parameter not set, or when  
allow_upload_template config parameter is set to false.</description>
     </context-param>

     <context-param>
         <param-name>context_root</param-name>
          
<param-value>/usr/local/lib/chameleon/cwc2/contexts/</param-value>
         <description>Absolute root path to context files. All context  
should be in that folder (or sub folder).</description>
     </context-param>

     <context-param>
         <param-name>context_maxsize</param-name>
         <param-value>1000000</param-value>
         <description>This is the context file max size that a CWC2 user  
can upload on the server</description>
     </context-param>

     <context-param>
         <param-name>template_root</param-name>
          
<param-value>/usr/local/lib/chameleon/cwc2/templates/</param-value>
         <description>Absolute root path to template files. All template  
should be in that folder (or sub folder).</description>
     </context-param>

     <context-param>
         <param-name>fontlist_file</param-name>
          
<param-value>/usr/local/lib/chameleon/cwc2/etc/fonts.txt</param-value>
         <description>Path and filename of the font list file used by  
MapServer (i.e. /path/to/file/fonts.txt ).</description>
     </context-param>

     <context-param>
         <param-name>symbol_file</param-name>
          
<param-value>/usr/local/lib/chameleon/cwc2/etc/symbols.sym</param- 
value>
         <description>Path and filename of the symbol file used by  
MapServer (i.e. /path/to/file/symbols.sym ).</description>
     </context-param>
</app-context>


My chameleon.xml file contains:
<app-context>
     <context-param>
         <param-name>web_server_path</param-name>
         <param-value>%CHAMELEON_WEB_PATH%</param-value>
         <description>This is the URL to chameleon.php.  You can use an  
alias (i.e. /chameleon/) or an absolute URL (i.e. http://).  Note that  
if you use a URL and set it to http://localhost/path-to-chameleon; then  
the app won't work from remote machines.</description>
     </context-param>

     <context-param>
         <param-name>ows_schemas_location</param-name>
         <param-value>http://ogc.dmsolutions.ca</param-value>
         <description>URL pointing to the root of a repository of OGC  
schemas.  See http://ogc.dmsolutions.ca for an example.  You shouldn't  
need to change this unless you know why you would want  
to.</description>
     </context-param>

     <context-param>
         <param-name>wms_parse_file</param-name>
          
<param-value>/usr/local/lib/chameleon/cwc2/htdocs/common/wmsparse/ 
wmsparse</param-value>
         <description>Full file path to the binary wms parser executable  
('/path/to/wmsparse' on Unix, '/path/to/wmsparse.exe' on Windows).   
Leave empty to use the Chameleon C module if available (faster and  
brand new) or the built in PHP parser (slower and  
obsolete).</description>
     </context-param>

     <context-param>
         <param-name>wms_connectiontimeout</param-name>
         <param-value>30</param-value>
         <description>Maximum time in seconds that MapServer will wait  
for an answer from a WMS server.</description>
     </context-param>

     <context-param>
         <param-name>validate_template</param-name>
         <param-value>true</param-value>
         <description>Validate the attributes of each tag in the input  
template.  This should be set to true for debugging but may be set to  
false in a production environment to enhance performance.</description>
     </context-param>

     <context-param>
         <param-name>default_language</param-name>
         <param-value>en-CA</param-value>
         <description>Default language specifier, for instance en-CA or  
fr-CA.</description>
     </context-param>

     <context-param>
         <param-name>invalid_session_template</param-name>
         <param-value></param-value>
         <description>Template to display if session is  
invalid.</description>
     </context-param>

     <context-param>
         <param-name>mapscript_module</param-name>
         <param-value>php_mapscript_40.so</param-value>
         <description>Mapscript module name (i.e. php_mapscript_40.dll  
for Windows installations or php_mapscript_40.so for Unix  
installations).</description>
     </context-param>

     <context-param>
       <param-name>image_type</param-name>
       <param-value>AUTO</param-value>
       <description>Output image type (eg: PNG, GIF). Must be uppercase.  
This image format MUST be supported by your browser and GD (on the  
server). Please don't change that value unless you know what you'r  
doing. The AUTO value will take the image_type from the mapfile you are  
loading.</description>
     </context-param>

     <context-param>
         <param-name>button_cache_path</param-name>
         <param-value>%BUTTON_CACHE_PATH%</param-value>
         <description>Directory in which to write image files generated  
for buttons.  This directory must be writable by the web server user  
and web accessible.  For performance reasons, this directory should not  
be cleaned out automatically.</description>
     </context-param>

     <context-param>
         <param-name>button_cache_web_path</param-name>
         <param-value>%BUTTON_CACHE_WEB_PATH%</param-value>
         <description>The URL where a browser can find cached button  
images.</description>
     </context-param>

     <context-param>
         <param-name>tmp_web_path</param-name>
         <param-value>%TMP_WEB_PATH%</param-value>
         <description>URL where browser can find temporary files as  
context or images</description>
     </context-param>

     <context-param>
         <param-name>tmp_img_path</param-name>
         <param-value>%TMP_PATH%</param-value>
         <description>Directory where temporary image files are  
put.</description>
     </context-param>

     <context-param>
         <param-name>execution_timeout</param-name>
         <param-value>120</param-value>
         <description>The amount of time in seconds to allow PHP to  
process a PHP page.  This includes (for now) the time required to draw  
remote WMS layers which can be lengthy.</description>
     </context-param>

     <context-param>
       <param-name>maturity_level</param-name>
       <param-value>BETA</param-value>
       <description>This option controls the widgets that will be  
available to chameleon applications.  Only widgets at or above the  
configured level will be accessible.  Levels in increasing order of  
maturity are: UNKNOWN, ALPHA, BETA, RELEASECANDIDATE, TECHNICALRELEASE,  
PRODUCTRELEASE.  See Chameleon documentation for a description of these  
maturity levels.  </description>
     </context-param>

     <context-param>
       <param-name>count_hits</param-name>
       <param-value>false</param-value>
       <description>This option allows you to keep track of the visitors  
to the site</description>
     </context-param>
</app-context>

Thanks,

Matt Roberson



More information about the Chameleon mailing list