Installing nginx is straightforward, so I will not go into details, just check the nginx documentation for more.
First create a repo file.
vi /etc/yum.repos.d/nginx.repo
and add following content to repo file:
CentOS
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
To install php 5.3.8 we need extra repos (source article).
## Remi Dependency on CentOS 5 and Red Hat (RHEL) 5 ##
rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
## CentOS 5 and Red Hat (RHEL) 5 ##
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
Install using added repos.
yum --enablerepo=remi install nginx php php-fpm php-common
Install necessary php modules for you.
yum --enablerepo=remi install php-pear
Start Nginx
/etc/init.d/nginx start ## use restart after update
## OR ##
service nginx start ## use restart after update
Start PHP-FPM
/etc/init.d/php-fpm start ## use restart after update
## OR ##
service php-fpm start ## use restart after update
Autostart Nginx on boot
chkconfig --add nginx
chkconfig --levels 235 nginx on
#Autostart PHP-FPM on boot
chkconfig --add php-fpm
chkconfig --levels 235 php-fpm on
Now it is time to configure nginx to work with php.
vi /etc/nginx/conf.d/test.conf
put these lines into file.
server {
server_name example.net;
access_log /var/logs/nginx/example.access.log;
error_log /var/logs/nginx/example.error.log;
root /var/www/example;
location / {
index index.html index.htm index.php;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/example$fastcgi_script_name;
}
}
restart nginx
service nginx restart
create an index file to test.
vi /var/www/example/index.php
<?php phpinfo(); ?>