
Speed up your apache server running PHP with fastCGI

![]() | Since I am facing performance problem due to the load of visitors and a badly configured server, I decide today to document my findings in this new series of articles.FastCGI is an extention to CGI that increases speed. Instead of creating a new process every time a page is reloaded, FastCGI will use the same process, queuing up requests. This increases startup speed, at the expense of forcing users to wait for the previous requests to finish. FastCGI also allows programs to get the web server to do certain operations, like reading in a file, before the request is handed over. [WikiPedia] FastCGI provides a way to keep PHP frequently-run script files loaded on Your server so that script are already preloaded and initialized the next time they are used. This can make some scripts run up to five times more quickly (in most cases it’s as fast as mod_php, without the drawbacks). Moreover You can run different version of PHP (PHP4 and PHP5) in the same server… Server: Strato (www.strato.de) |
1 | Use yast2 to install mod_fastcgi on the system, this will create files (*.so) in /usr/lib/apache2-worker/ and /usr/lib/apache2-prefork/ |
2 | Edit the file # vi /etc/sysconfig/apache2 and add fastcgi, suexec remove php4/php5 if any APACHE_MODULES="fastcgi cache mem_cache deflate headers access actions alias auth auth_dbm autoindex cgi dir env expires include log_config mime negotiation setenvif ssl userdir php4 php5 perl rewrite suexec" |
3 | create a new file in /etc/apache2/conf.d/mod_fastcgi.conf #vi /etc/apache2/conf.d/mod_fastcgi.conf and add these lines, at the end of file, adapt all path according to your system. Keep in mind, I have a SuSE system <IfModule mod_fastcgi.c> |
4 | start # apache2-reconfigure-mpm this recreate the file /etc/apache2/sysconfig.d/loadmodule.conf and restart apache automatically. |
References: