Using Apache to Run Web Scripts
Problem
You want to run Perl, Ruby, PHP, or Python programs in a web environment.
Solution
Execute them using the Apache server.
Discussion
This recipe describes how to configure Apache for running Perl, Ruby, PHP, and Python scripts. It also illustrates how to write web-based scripts in each language.
There are typically several directories under the Apache root directory. Here I’ll assume that directory to be /usr/local/apache, although it may be different on your system. For example, on Windows, you might find Apache under C:\Program Files. The directories under the Apache root include bin (which contains httpd—that is, Apache itself—and other Apache-related executable programs), conf (for configuration files, notably httpd.conf, the primary file used by Apache), htdocs (the root of the document tree), and logs (for logfiles). The layout might differ on your system. For example, you might find the configuration files in /etc/httpd and the logs under /var/log/httpd. Modify the following instructions accordingly.
To configure Apache for script execution, edit the httpd.conf file in the conf directory. Typically, executable scripts are identified either by location or by filename suffix. A location can be either language-neutral or language-specific.
Apache configurations often have a
cgi-bin directory
under the Apache root directory in which you can install scripts that
should run as external programs. It’s configured using a
ScriptAlias
directive:
ScriptAlias ...
Get MySQL Cookbook, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.