Difference between revisions of "Apache and FastCGI"

From ArchWiki
Jump to: navigation, search
(Introduction)
m (improve install link as recommended in Help:Style#Package management instructions)
 
(5 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[Category:Web Server]]
+
[[Category:Web server]]
 
[[es:Apache and FastCGI]]
 
[[es:Apache and FastCGI]]
 
{{Poor writing}}
 
{{Poor writing}}
  
==Introduction==
+
== Installation ==
 +
 
 
There are two FastCGI modules for Apache:
 
There are two FastCGI modules for Apache:
* [http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html mod_fastcgi] (seems to be faster; see [http://blog.chty.org/post/2007/10/08/151-apache2-mod_fcgid-vs-mod_fastcgi])
+
* [http://www.fastcgi.com/mod_fastcgi/docs/mod_fastcgi.html mod_fastcgi]
 
* [http://fastcgi.coremail.cn/index.htm mod_fcgid]
 
* [http://fastcgi.coremail.cn/index.htm mod_fcgid]
They both have permissive licenses (custom for mod_fastcgi and GPL for mod_fcgid) and they are both available in Extra repository.
+
They both have permissive licenses (custom for mod_fastcgi and GPL for mod_fcgid) and they are both available in the [[official repositories]].
  
Apache 2.4 (available as [http://aur.archlinux.org/packages.php?ID=60719 AUR package]) now provides an official module, [http://httpd.apache.org/docs/2.4/mod/mod_proxy_fcgi.html mod_proxy_fcgi]. See  [http://wiki.apache.org/httpd/PHP-FPM configuration example for php-fpm].
+
Apache 2.4 (available in the [[official repositories]] as {{Pkg|apache}}) now provides an official module, [http://httpd.apache.org/docs/2.4/mod/mod_proxy_fcgi.html mod_proxy_fcgi]. See  [http://wiki.apache.org/httpd/PHP-FPM configuration example for php-fpm].
  
==mod_fastcgi==
+
== mod_fastcgi ==
===Step 1: Installation===
+
pacman -S mod_fastcgi
+
  
===Step 2: Configuration===
+
[[Install]] {{Pkg|mod_fastcgi}} from the official repositories.
First you need to load the fastcgi module. Make sure that the following is '''present''' and '''uncommented''' in your httpd.conf:
+
 
 +
First you need to load the fastcgi module. Make sure that the following is '''present''' and '''uncommented''' in your {{ic|httpd.conf}}:
 
  LoadModule fastcgi_module modules/mod_fastcgi.so
 
  LoadModule fastcgi_module modules/mod_fastcgi.so
  
Line 27: Line 27:
 
Remember that standard CGI restrictions apply, files must be in an ExecCGI enabled directory to execute.
 
Remember that standard CGI restrictions apply, files must be in an ExecCGI enabled directory to execute.
  
==mod_fcgid==
+
== mod_fcgid ==
===Step 1: Installation===
+
pacman -S mod_fcgid
+
  
===Step 2: Configuration===
+
Install {{Pkg|mod_fcgid}} from the official repositories.
First you need to load the fastcgi module. Make sure that the following is '''present''' and '''uncommented''' in your httpd.conf:
+
 
 +
First you need to load the fastcgi module. Make sure that the following is '''present''' and '''uncommented''' in your {{ic|httpd.conf}}:
 
  LoadModule fcgid_module modules/mod_fcgid.so
 
  LoadModule fcgid_module modules/mod_fcgid.so
  
Line 43: Line 42:
 
Remember that standard CGI restrictions apply, files must be in an ExecCGI enabled directory to execute.
 
Remember that standard CGI restrictions apply, files must be in an ExecCGI enabled directory to execute.
  
==Troubleshooting==
+
== Troubleshooting ==
 +
 
 
It doesn't work? Apache error log (<code>/var/log/httpd/error_log</code>) should help you find the problem.
 
It doesn't work? Apache error log (<code>/var/log/httpd/error_log</code>) should help you find the problem.
  
==See also==
+
== See also ==
 +
 
 
*[[lighttpd#FastCGI]]
 
*[[lighttpd#FastCGI]]

Latest revision as of 21:15, 13 December 2015

Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements.Tango-edit-clear.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:Apache and FastCGI#)

Installation

There are two FastCGI modules for Apache:

They both have permissive licenses (custom for mod_fastcgi and GPL for mod_fcgid) and they are both available in the official repositories.

Apache 2.4 (available in the official repositories as apache) now provides an official module, mod_proxy_fcgi. See configuration example for php-fpm.

mod_fastcgi

Install mod_fastcgi from the official repositories.

First you need to load the fastcgi module. Make sure that the following is present and uncommented in your httpd.conf:

LoadModule fastcgi_module modules/mod_fastcgi.so

Then you need to tell Apache when to use FastCGI.

For example you can ask Apache to treat all .fcgi files as fastcgi applications:

<IfModule fastcgi_module>
  AddHandler fastcgi-script .fcgi # you can put whatever extension you want
</IfModule>

Remember that standard CGI restrictions apply, files must be in an ExecCGI enabled directory to execute.

mod_fcgid

Install mod_fcgid from the official repositories.

First you need to load the fastcgi module. Make sure that the following is present and uncommented in your httpd.conf:

LoadModule fcgid_module modules/mod_fcgid.so

Then you need to tell Apache when to use FastCGI.

For example you can ask Apache to treat all .fcgi files as fastcgi applications:

<IfModule fcgid_module>
  AddHandler fcgid-script .fcgi # you can put whatever extension you want
</IfModule>

Remember that standard CGI restrictions apply, files must be in an ExecCGI enabled directory to execute.

Troubleshooting

It doesn't work? Apache error log (/var/log/httpd/error_log) should help you find the problem.

See also