Contents
FastCGI is a high-performance interface between web servers and applications, commonly used to run dynamic content. Unlike traditional CGI, FastCGI keeps the application processes alive between requests, which significantly improves performance and reduces server load.
CGI (Common Gateway Interface) is one of the earliest methods for generating dynamic web content. Each request spawns a new process, which makes it less efficient than FastCGI, but it's still used for simple scripts or legacy applications that don’t require high performance.
SSI (Server Side Includes) allows web servers to dynamically include content (such as headers, footers, or timestamps) into HTML pages before serving them. It's lightweight and useful for basic content templating, but limited in functionality compared to other scripting methods.
Custom error documents enable website owners to define their own error pages (e.g., 404 Not Found or 500 Internal Server Error), offering a more user-friendly experience and allowing for consistent branding even when an error occurs.
This section outlines what changes are made to the Apache virtual host configuration when enabling each Web Scripting option in Plesk.
When FastCGI is enabled, the following block is added:
<IfModule mod_fcgid.c>
<Files ~ (\.fcgi$)>
SetHandler fcgid-script
Options +ExecCGI
</Files>
</IfModule>
.fcgi
scripts.fcgid-script
handler via mod_fcgid
.ExecCGI
to allow CGI-style execution.When CGI is enabled, two key changes occur:
1. ScriptAlias is added:
ScriptAlias "/cgi-bin/" "/var/www/vhosts/example.com/httpdocs/cgi-bin/"
2. Document-Root Options
directive is updated:
Options -Includes +ExecCGI
/cgi-bin/
URL path to the physical directory containing CGI scripts.+ExecCGI
.When SSI is enabled, the document-root Options
directive is updated to:
Options +Includes -ExecCGI
<!--#include ... -->
inside .shtml
or .html
files.When Perl scripting is enabled, the following block is added:
<IfModule mod_perl.c>
<Files ~ (\.pl$)>
SetHandler perl-script
PerlHandler ModPerl::Registry
Options +ExecCGI
allow from all
PerlSendHeader On
</Files>
</IfModule>
.pl
Perl scripts to be executed via mod_perl
.ModPerl::Registry
for persistent execution (performance boost).PerlSendHeader On
.allow from all
.You can find the Proxy Mode toggle under:
Domain > Hosting & DNS > Apache & nginx Settings
.htaccess
rules are applied..htaccess
rules are ignored (NGINX doesn’t process .htaccess files).If you have the LiteSpeed Extension for Plesk installed, LiteSpeed replaces Nginx + Apache as the main web server. This change affects how scripts are processed.
.htaccess
files.