There is a new revision of this tutorial available for CentOS 7.
Installing Lighttpd With PHP5 And MySQL Support On CentOS 5.3
Author: Falko Timme
Follow me on Twitter
Lighttpd is a secure, fast, standards-compliant web server designed for speed-critical environments. This tutorial shows how you can install Lighttpd on a CentOS 5.3 server with PHP5 support (through FastCGI) and MySQL support.
I do not issue any guarantee that this will work for you!
1 Preliminary Note
In this tutorial I use the hostname server1.example.com with the IP address 192.168.0.100. These settings might differ for you, so you have to replace them where appropriate.
2 Installing MySQL 5.0
First we install MySQL 5.0 like this:
yum install mysql mysql-server
Then we create the system startup links for MySQL (so that MySQL starts automatically whenever the system boots) and start the MySQL server:
chkconfig --levels 235 mysqld on
Create a password for the MySQL user root (replace yourrootsqlpassword with the password you want to use):
mysqladmin -u root password yourrootsqlpassword
mysqladmin -h server1.example.com -u root password yourrootsqlpassword
3 Installing Lighttpd
Lighttpd is not available from the official CentOS 5.3 repositories, but from the RPMforge repositories (see http://dag.wieers.com/rpm/FAQ.php#B2 for instructions). We install the RPMforge package for RHEL 5 which works for CentOS 5.3 as well:
If you are on an x86_64 system:
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
If you are on an i386 system:
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
Afterwards, we can install Lighttpd like this:
yum install lighttpd
Then we create the system startup links for Lighttpd (so that Lighttpd starts automatically whenever the system boots) and start it:
chkconfig --levels 235 lighttpd on
Now direct your browser to http://192.168.0.100, and you should see the following page:
Lighttpd's default document root is /srv/www/lighttpd on CentOS 5.3 (there's no index file in that directory like index.html, that's why you get a 404 Not Found error), and the configuration file is /etc/lighttpd/lighttpd.conf.
4 Installing PHP5
We can make PHP5 work in Lighttpd through FastCGI. Therefore we install the packages lighttpd-fastcgi and php-cli:
yum install lighttpd-fastcgi php-cli