electronic.alchemy :: FastCGI
where the past meets the future
pike > Fins > FastCGI


Created by hww3. Last updated by hww3, 12 years ago. Version #3.

Fins provides a FastCGI connector for running Fins applications under web servers such as Apache.

General Requirements

Required components:

Download, compile and install all of the components above.

Now, install the FinsRunner.fcgi script from Fins/fcgi in the document space of your webserver, the examples that follow assume the script will appear as /FinsRunner.fcgi.

Edit the first line of the script so that the proper version of pike and the correct path to the Fins libraries are listed.

Edit the settings for the log file, storage directory, application directory (the full directory to your Fins Application) and the configuration name to use.

Test that the application loads by running executing FinsRunner.fcgi. You will get an error about the request failing, but the application should load successfully. Correct any errors that appear (not including the Public.Web.FCGI errors).

Apache Configuration

Required components:

Download, compile and install all of the components above.

Add the following to your httpd.conf to set up the rewrite rule (be sure this appears before any Directory directives):

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule (.*) /FinsRunner.fcgi$1 [L]

Also, add the following to set up FastCGI support:

LoadModule fastcgi_module modules/mod_fastcgi.so
AddHandler fastcgi-script fcgi

Finally, add ExecCGI to the Options setting within the Directory directive that your FinsRunner.fcgi script is located in (add it to any existing Options that are present, all on the same line). For example:

<Directory "/usr/local/apache2/htdocs">
    Options Indexes FollowSymLinks ExecCGI
    Order allow,deny
    Allow from all

Restart your Apache server.

Note that mod_fcgi has many options for controlling how FastCGI processes are created. The default method is called "Dynamic", which will automatically create a certain number of copies of an application. This might not be desirable, and so you may need to modify the apache configuration to meet your needs. For example:

FastCgiServer htdocs/FinsRunner.fcgi

Defines a static FastCGI application, of which there will be one process running at a time, which will be started when the web server is started. If the running process dies, it will be restarted.

Not categorized | RSS Feed | BackLinks

comments powered by Disqus