GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Nginx avec PHP-FastCGI sur CentOS 6

Dans ce didacticiel, nous allons vous montrer comment installer Nginx avec PHP-FastCGI sur CentOS 6. Pour ceux d'entre vous qui ne le savaient pas, Nginx est l'un des serveurs Web les plus populaires de dans le monde et est responsable de l'hébergement de certains des sites Internet les plus importants et les plus fréquentés. Il est plus économe en ressources qu'Apache dans la plupart des cas et peut être utilisé comme serveur Web ou proxy inverse.

Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple. Je vais vous montrer étape par étape l'installation de Nginx avec fast-CGI sur le serveur CentOS 6.

Installer Nginx avec PHP-FastCGI sur CentOS 6

Étape 1. Pour installer, vous devez d'abord ajouter les informations du référentiel EPEL yum correspondant à votre version CentOS/RHEL.

## RHEL/CentOS 6 32-Bit ##
# wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm
## RHEL/CentOS 6 64-Bit ##
# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm

Étape 2. Installez le package Nginx et ses dépendances.

Installation de Nginx à l'aide de la commande suivante :

yum update
yum -y install nginx

Étape 3. Installez les packages PHP requis.

yum install 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-mbstring php-mcrypt php-mssql php-shout php-snmp php-soap php-tidy

Étape 4. Installez spawn-fcgi.

Maintenant, nous installons spawn-fcgi en utilisant la commande suivante ci-dessous :

yum install spawn-fcgi -y

Configurez le script d'initialisation Fast-CGI :

nano /etc/init.d/php-cgi
#!/bin/sh
#
# php-cgi - php-fastcgi swaping via spawn-fcgi
#
# chkconfig: - 85 15
# description: Run php-cgi as app server
# processname: php-cgi
# config: /etc/sysconfig/phpfastcgi (defaults RH style)
# pidfile: /var/run/php-cgi.pid
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
     
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
     
spawnfcgi="/usr/bin/spawn-fcgi"
php_cgi="/usr/bin/php-cgi"
prog=$(basename $php_cgi)
server_ip=127.0.0.1
server_port=9000
server_user=nginx
server_group=nginx
server_childs=5
pidfile="/var/run/php_cgi.pid"
     
# do not edit, put changes in /etc/sysconfig/phpfastcgi
[ -f /etc/sysconfig/phpfastcgi ] && . /etc/sysconfig/phpfastcgi
     
start() {
[ -x $php_cgi ] || exit 1
[ -x $spawnfcgi ] || exit 2
echo -n $"Starting $prog: "
daemon $spawnfcgi -a ${server_ip} -p ${server_port} -u ${server_user} -g ${server_group} -P ${pidfile} -C ${server_childs} -f ${php_cgi}
retval=$?
echo
return $retval
}
     
stop() {
echo -n $"Stopping $prog: "
killproc -p ${pidfile} $prog -QUIT
retval=$?
echo
[ -f ${pidfile} ] && /bin/rm -f ${pidfile}
return $retval
}
     
restart(){
stop
sleep 2
start
}
     
rh_status(){
status -p ${pidfile} $prog
}
     
case "$1" in
start)
start;;
stop)
stop;;
restart)
restart;;
status)
rh_status;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 3
esac
chmod +x /etc/init.d/php-cgi

Étape 5. Configurez le serveur Web Nginx.

#nano /etc/nginx/conf.d/idroot.us.conf

server {
   listen  80;
   server_name  idroot.us www.idroot.us;
 
   access_log  /var/www/idroot.us/logs/access.log ;
   error_log    /var/www/idroot.us/logs/error.log ;
 
   location / {
       root   /var/www/idroot.us/public_html;
       index  index.php index.html index.htm;
 
   }
 
   error_page   500 502 503 504  /50x.html;
   location = /50x.html {
       root   /var/www/idroot.us/public_html;
   }
 
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
  location ~ .php$ {
  fastcgi_pass   127.0.0.1:9000;
  fastcgi_index  index.php;
  root    /var/www/idroot.us/public_html;
  fastcgi_param  SCRIPT_FILENAME  /var/www/idroot.us/public_html$fastcgi_script_name;
  include fastcgi_params;
  }

   location ~ /.ht {
       deny  all;
   }
}

Étape 5. Démarrez le service Nginx et PHP-FastCGI.

etc/init.d/nginx start
etc/init.d/php-cgi start

Important  :Pour des raisons de sécurité, vous souhaiterez modifier/ajouter la ligne suivante à /etc/php.ini et redémarrer Nginx :

cgi.fix_pathinfo=0

Félicitations ! Vous avez installé avec succès Nginx et PHP-FastCGI. Merci d'avoir utilisé ce didacticiel pour installer Nginx et PHP-FastCGI sur les systèmes CentOS 6. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le site officiel de Nginx.


Cent OS
  1. Comment installer Nginx sur CentOS 7

  2. Comment installer WordPress avec Nginx sur CentOS 7

  3. Installez Nginx avec ngx_pagespeed sur CentOS 7

  4. Comment installer phpMyAdmin avec Nginx sur CentOS 7 / RHEL 7

  5. Comment installer Sitemagic CMS sur CentOS 7 – Avec Nginx

Comment installer phpMyAdmin avec Nginx sur CentOS 8 / RHEL 8

Comment installer Nginx sur CentOS

Comment installer Nginx avec ngx_pagespeed sur CentOS

Comment installer Magento avec Nginx sur CentOS 7

Comment installer Laravel avec Nginx sur CentOS 8

Comment installer Nginx sur CentOS 7 ?