GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come installare Nginx con PHP-FastCGI su CentOS 6

In questo tutorial, ti mostreremo come installare Nginx con PHP-FastCGI su CentOS 6. Per chi non lo sapesse, Nginx è uno dei server web più popolari in nel mondo ed è responsabile dell'hosting di alcuni dei siti più grandi e con il traffico più elevato su Internet. Nella maggior parte dei casi è più rispettoso delle risorse di Apache e può essere utilizzato come server Web o proxy inverso.

Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il ​​tuo sito sul tuo VPS. L'installazione è abbastanza semplice. Lo farò mostrarti l'installazione passo passo di Nginx con CGI veloce sul server CentOS 6.

Installa Nginx con PHP-FastCGI su CentOS 6

Passaggio 1. Per installare, devi prima aggiungere le informazioni del repository EPEL yum corrispondenti alla tua versione di 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

Passaggio 2. Installa il pacchetto Nginx e le dipendenze.

Installazione di Nginx utilizzando il seguente comando:

yum update
yum -y install nginx

Passaggio 3. Installa i pacchetti PHP richiesti.

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

Passaggio 4. Installa spawn-fcgi.

Ora installiamo spawn-fcgi utilizzando il comando seguente:

yum install spawn-fcgi -y

Configura lo script di inizializzazione 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

Passaggio 5. Configura il server 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;
   }
}

Passaggio 5. Avvia il servizio Nginx e PHP-FastCGI.

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

Importante :Per motivi di sicurezza, ti consigliamo di modificare/aggiungere la seguente riga a /etc/php.ini e riavviare Nginx:

cgi.fix_pathinfo=0

Congratulazioni! Hai installato con successo Nginx e PHP-FastCGI. Grazie per aver utilizzato questo tutorial per l'installazione di Nginx e PHP-FastCGI sui sistemi CentOS 6. Per ulteriore aiuto o informazioni utili, ti consigliamo di controllare il sito web ufficiale di Nginx.


Cent OS
  1. Come installare Nginx su CentOS 7

  2. Come installare WordPress con Nginx su CentOS 7

  3. Installa Nginx con ngx_pagespeed su CentOS 7

  4. Come installare phpMyAdmin con Nginx su CentOS 7 / RHEL 7

  5. Come installare Sitemagic CMS su CentOS 7 – Con Nginx

Come installare phpMyAdmin con Nginx su CentOS 8 / RHEL 8

Come installare Nginx su CentOS

Come installare Nginx con ngx_pagespeed su CentOS

Come installare Magento con Nginx su CentOS 7

Come installare Laravel con Nginx su CentOS 8

Come installare Nginx su CentOS 7?