Enabling CGI

< appboard | 2.6 | admin


AppBoard runs on an Apache Tomcat server that can be configured to run CGI scripts. However, enabling CGI can introduce additional load on the AppBoard server and raises it's own security concerns. This document simply covers enabling CGI but thought should go into the issues mentioned.

An alternative is to set up a separate web server environment for custom applications and then include the content via enPortal proxy channels.

1. Steps to Enable CGI

  1. Edit [INSTALL_HOME]/server/conf/web.xml
    1. uncomment the CGI servlet section, lines 333 through 347
    2. uncomment the CGI servlet-mapping section, lines 381 through 386
    3. save changes.
  2. Edit [INSTALL_HOME]/server/conf/context.xml
    1. add the parameter privileged="true" to the <Context ... > tag on line 19.
    2. save changes.
    3. create the directory [INSTALL_HOME]/server/webapps/enportal/WEB-INF/cgi
  3. Restart AppBoard.
Changes to web.xml and context.xml are not archived by default. If changes are made to include these files in archives then they must be manually verified to match the latest version on upgrade. These are considered system files and may change release to release.

2. Additional Information

The default CGI options are as follows:

  • CGI interpreter is the system perl. To change this it's necessary to modify the CGI servlet section and set the executable parameter.
  • CGI files should be placed into [INSTALL_HOME]/server/webapps/enportal/WEB-INF/cgi/
  • URL to access CGIs: /enportal/cgi-bin/sample.cgi

For more information on CGI in Tomcat please refer to the Tomcat CGI How To documentation.