//  ========================================================================
//  Copyright (c) 1995-2016 Mort Bay Consulting Pty. Ltd.
//  ========================================================================
//  All rights reserved. This program and the accompanying materials
//  are made available under the terms of the Eclipse Public License v1.0
//  and Apache License v2.0 which accompanies this distribution.
//
//      The Eclipse Public License is available at
//      http://www.eclipse.org/legal/epl-v10.html
//
//      The Apache License v2.0 is available at
//      http://www.opensource.org/licenses/apache2.0.php
//
//  You may elect to redistribute this code under either of these licenses.
//  ========================================================================

[[cgi-servlet]]
=== CGI Servlet

[[cgi-servlet-metadata]]
==== Info

* Classname: `org.eclipse.jetty.servlets.CGI`
* Maven Artifact: org.eclipse.jetty:jetty-servlets
* Javadoc: {JDURL}/org/eclipse/jetty/servlets/CGI.html
* Xref: {JXURL}/org/eclipse/jetty/servlets/CGI.html

[[cgi-servlet-usage]]
==== Usage

The CGI servlet class extends the abstract HttpServlet class. 
When the init parameter is called, the cgi bin directory is set with the cgibinResourceBase. 
Otherwise, it defaults to the resource base of the context. 
See CGI javadoc.

The cgi bin uses three parameters:

commandPrefix::
  The init parameter obtained when there is a prefix set to all commands directed to the method exec.
Path::
  An init parameter passed to the exec environment as a PATH. 
  This must be run unpacked somewhere in the filesystem.
ENV_::
  An init parameter that points to an environment variable with the name stripped of the leading ENV_ and using the init parameter value.
