Tomcat Cgi


Learn how to enable CGI scripts to run on the Apache web server. This tutorial includes step-by-step instructions for adding the necessary Apache configurations to allow CGI scripts to run, and how to set the correct permissions on the directory and CGI files. Fake south african drivers license template.

The CGI (Common Gateway Interface) defines a way for a web server to interact with external content-generating programs, which are often referred to as CGI programs or CGI scripts. It is a simple way to put dynamic content on your web site, using whatever programming language you're most familiar with. Tomcat can also be configured to run multiple web applications on different ports. For example, it could be running three applications on 8080, 8081, 9090 port numbers. By default, Apache tomcat makes use of port number 8080. Download and Extract Apache Tomcat 8. Download Apache Tomcat 8 from Choose “zip” from Core on the Binary Distributions section. Extract the archive to any directory. Configure Apache Tomcat 8 to enable CGI.

  1. Enable CGI Scripts in the Apache Configurations


  • A Cloud Server with CentOS 7 or Ubuntu 16.04 and Apache installed and running.

Apache is installed and running on a Standard Linux installation by default. If your server was created with a Minimal installation, you will need to install and configure Apache before you proceed.

Enable CGI Scripts in the Apache Configurations

Two things need to be set up, in order to run CGI scripts on a Linux server with Apache:

  • Apache needs to be configured to allow CGI scripts to run.
  • The script needs to be uploaded to the correct location, and given the correct permissions.

Apache Settings for CGI Scripts on CentOS 7

The first line tells Apache to execute CGI files which are uploaded to the /var/www/cgi-bin directory. The second line tells Apache that any file ending in .cgi, .pl, or .py is considered a CGI script.

The section now reads:

Save and exit the file. Then restart Apache so that the changes take effect:

Apache settings for CGI scripts on Ubuntu 16.04

On Ubuntu 16.04, Apache is configured by default to allow the execution of CGI scripts in the designated /usr/lib/cgi-bin directory. You will not need to change any Apache configurations.

However, Apache's CGI module will need to be enabled before CGI scripts can run. To do this, you will need to create a symlink:

Then restart Apache so that the changes take effect:

vServer (VPS) from IONOS

Tomcat Cgi Location

Low-cost, powerful VPS hosting for running your custom applications, with a personal assistant and 24/7 support.

Ready in 55 sec.

Upload the CGI script and set permissions

To verify the CGI script functionality on your server, we recommend starting with a test script. Create the file test.cgi in the server's designated cgi-bin and open it for editing:

  • CentOS 7:sudo nano /var/www/cgi-bin/test.cgi
  • Ubuntu 16.04:sudo nano /usr/lib/cgi-bin/test.cgi

Add the following content to this file:

Save and exit the file.

Next, give the file the correct executable permissions:

  • CentOS 7:sudo chmod 755 /var/www/cgi-bin/test.cgi
  • Ubuntu 16.04:sudo chmod 755 /usr/lib/cgi-bin/test.cgi

View the script in a browser, using either the domain name or IP address:

Tomcat Cgi Exploit

Troubleshooting CGI script errors

404 error: This means that the URL is not found. Check that the script has been added to the correct directory.

  • CentOS 7: The default CGI directory is var/www/cgi-bin/
  • Ubuntu 16.04: The default CGI directory is /usr/lib/cgi-bin

Server 500 error: This means that the script does not have the correct permissions. Check that the script has executable (chmod 755) permissions:

The correct permissions for the file are rwxr-xr-x.

Cloud backup from IONOS

Tomcat Cgi

Make costly downtime a thing of the past and back up your business the easy way!

Related articles