The mod_fastcgi module was deprecated in the previous release and has been replaced in the current release by the mod_proxy_fcgi and mod_authnz_fcgi modules. The mod_proxy_fcgi module uses mod_proxy to provide FastCGI support. The mod_authnz_fcgi module allows FastCGI authorizer applications to authenticate users and authorize access to resources.
Complete the following tasks to migrate from the mod_fastcgi module to the mod_proxy_fcgi and mod_authnz_fcgi modules.
Edit the httpd.conf file to comment out the LoadModule lines for mod_fastcgi and mod_fcgi. Add LoadModule lines for mod_proxy, mod_proxy_fcgi, and mod_authnz_fcgi, for example:
# LoadModule fastcgi_module modules/mod_fastcgi.so # LoadModule fcgi_module modules/mod_fcgi.so LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_fcgi_module modules/mod_proxy_fcgi LoadModule authnz_fcgi_module modules/mod_authnz_fcgi
Delete any of the following mod_fastcgi configuration directives that appear in the htttpd.conf file. For more information on these directives, see the following URL
https://docs.oracle.com/cd/B31017_01/web.1013/q20204/mod_fastcgi.html
FastCgiServer
FastCgiConfig
FastCgiExternalServer
FastCgiIpcDir
FastCgiWrapper
FastCgiAuthenticator
FastCgiAuthenticatorAuthoritative
FastCgiAuthorizer
FastCgiAuthorizerAuthoritative
FastCgiAccessChecker
FastCgiAccessCheckerAuthoritative
The mod_proxy_fcgi module does not have configuration directives. Instead, it uses the directives set on the mod_proxy module. Unlike the mod_fcgid and mod_fastcgi modules, the mod_proxy_fcgi module has no provision for starting the application process. The purpose of mod_proxy_fcgi is to move this functionality outside of the web server for faster performance. So, mod_proxy_fcgi simply will act as a reverse proxy to an external FastCGI server.
For examples of using mod_proxy_fcgi, see the following URL:
http://httpd.apache.org/docs/trunk/mod/mod_proxy_fcgi.html
For information on the directives available for mod_proxy, including reverse proxy examples, see the following URL:
http://httpd.apache.org/docs/trunk/mod/mod_proxy.html
Another way to setup the mod_proxy_fcgi module to act as a reverse proxy to a FastCGI server is to force a request to be handled as a reverse-proxy request. To do this, you must create a suitable Handler pass-through (also known as "Access via Handler"). For more information on how to set up a Handler pass-through, see the following URL:
http://httpd.apache.org/docs/trunk/mod/mod_proxy.html#handler
An external FastCGI server enables you to run FastCGI scripts external to the web server or even on a remote machine. The following list provides information on some available FastCGI server solutions:
fcgistarter, a utility for starting FastCGI programs. This solution is provided by Apache httpd 2.4. It only works on UNIX systems. For more information on fcgistarter, see the following URL:
http://httpd.apache.org/docs/trunk/programs/fcgistarter.html
PHP-FPM, an alternative PHP FastCGI implementation. This solution is included with PHP release 5.3.3 and later. For more information on PHP-FPM, see the following URL:
spawn-fcgi, a utility for spawning remote and local FastCGI processes. For more information on spawn-fcgi, see the following URL:
http://redmine.lighttpd.net/projects/spawn-fcgi/wiki/WikiStart
The mod_authnz_fcgi module allows FastCGI authorizer applications to authenticate users and authorize access to resources. It supports generic FastCGI authorizers which participate in a single phase for authentication and authorization, and Apache httpd-specific authenticators and authorizers.FastCGI authorizers can authenticate using user id and password, such as for Basic authentication, or can authenticate using arbitrary mechanisms. For more information on using mod_authnz_fcgi, see the following URL: