Print
Parent Category: Tutorials
Hits: 10976

This tutorial is dedicated all linux users wich wish to setup or install Nginx on CentOS or Linux servers

First install the Nginx:
Method 1:
#rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
#yum update
#yum install nginx php-cli php make automake gcc gcc-c++ spawn-fcgi wget


Method2:

#wget ftp://fr2.rpmfind.net/linux/epel/5/x86_64/nginx-0.8.53-1.el5.x86_64.rpm
#yum install GeoIP
#yum install gd
#yum install libxslt
#rpm -ivh nginx-0.8.53-1.el5.x86_64.rpm

Set nginx to startup at boot:

#chkconfig --add nginx
#chkconfig --level 35 nginx on
#service nginx start


Install php extensions:

#yum install lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc \
php-pear php-xml php-xmlrpc php-eaccelerator php-magickwand php-magpierss \
php-mapserver php-mbstring php-mcrypt php-mhash php-mssql php-shout php-snmp \
php-soap php-tidy

Now let's configure a vhost:


#mkdir -p /srv/www/www.example.com/public_html
#mkdir /srv/www/www.example.com/logs
#chown -R nginx:nginx /srv/www/www.example.com

#mkdir /etc/nginx/sites-available
#mkdir /etc/nginx/sites-enabled

Add the following lines to your /etc/nginx/nginx.conf file, immediately after the line for "include /etc/nginx/conf.d/*.conf":

# Load config files from the /etc/nginx/conf.d directory
#include /etc/nginx/conf.d/*.conf;
# Load virtual host configuration files.
include /etc/nginx/sites-enabled/*;


Create file: /etc/nginx/sites-available/www.example.com:

server {
listen 80;
server_name www.example.com example.com;
access_log /srv/www/www.example.com/logs/access.log;
error_log /srv/www/www.example.com/logs/error.log;

# location / {
# root /srv/www/www.example.com/public_html;
# index index.html index.htm index.php;
# }
location / {
root /srv/www/www.example.com/public_html;
index index.html index.htm index.php;
if (!-e $request_filename) {
rewrite ^.*$ /index.php last;
}
}

location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /srv/www/www.example.com/public_html$fastcgi_script_name;
}
}
#cd /etc/nginx/sites-enabled/
#ln -s /etc/nginx/sites-available/www.example.com
#service nginx restart

#cd /opt
#wget https://library.linode.com/web-servers/nginx/php-fastcgi/reference/php-fastcgi-rpm.sh
#mv php-fastcgi-rpm.sh /usr/bin/php-fastcgi
#chmod +x /usr/bin/php-fastcgi
#wget https://library.linode.com/web-servers/nginx/php-fastcgi/reference/php-fastcgi-init-rpm.sh
#mv php-fastcgi-init-rpm.sh /etc/rc.d/init.d/php-fastcgi
#chmod +x /etc/rc.d/init.d/php-fastcgi
#chkconfig --add php-fastcgi
#chkconfig php-fastcgi on


Add this in /etc/php.ini at the end of file:

cgi.fix_pathinfo = 1
#/etc/init.d/php-fastcgi start

Enjoy

Note:

We use Hosting and VPS Hosting, from: www.star-host.org

We like and trust them.

Good prices, high security.