Original address: http://www.lifelinux.com/how-to-install-nginx-and-php-fpm-on-centos-6-via-yum/
Before starting to install Nginx and PHP-FPM, you must uninstall the previously installed Apache and PHP in the system. Log in as root and enter the following command:
[plain] view
plaincopy
#Yum Remove HTTPD*PHP*
-
Increase the additional resource library By default, the official resources of CentOS are not PHP-FPM, but we can from Remi Obtained from RPM resources, it depends on EPEL resources. We can add two resource libraries like this:
[plain] view
plaincopy
- # yum install yum-priorities -y
-
# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-7.noarch RPM
[plain] view
plaincopy
Retrieving http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
warning: /var/tmp/ rpm-tmp.00kiDx: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY Preparing...######################## ################### [100%]
1:epel-release ################## ######################## [100%]
-
Install Nginx
Enter the following command
- [plain] view
plaincopy
#yum install nginx Output sample
[plain] view
plaincopy
-
- Dependencies Resolved
-
- ================================================================================
- Package Arch Version Repository Size
- ================================================================================
- Installing:
- nginx x86_64 0.8.54-1.el6 epel 358 k
- Installing for dependencies:
- GeoIP x86_64 1.4.8-1.el6 epel 620 k
- fontconfig x86_64 2.8.0-3.el6 base 186 k
- freetype x86_64 2.3.11-6.el6_1.8 updates 358 k
- gd x86_64 2.0.35-10.el6 base 142 k
- libX11 x86_64 1.3-2.el6 base 582 k
- libX11-common noarch 1.3-2.el6 base 188 k
- libXau x86_64 1.0.5-1.el6 base 22 k
- libXpm x86_64 3.5.8-2.el6 base 59 k
- libjpeg x86_64 6b-46.el6 base 134 k
- libpng x86_64 2:1.2.46-1.el6_1 base 180 k
- libxcb x86_64 1.5-1.el6 base 100 k
- libxslt x86_64 1.1.26-2.el6 base 450 k
- perl x86_64 4:5.10.1-119.el6_1.1 base 10 M
- perl-Module-Pluggable x86_64 1:3.90-119.el6_1.1 base 37 k
- perl-Pod-Escapes x86_64 1:1.04-119.el6_1.1 base 30 k
- perl-Pod-Simple x86_64 1:3.13-119.el6_1.1 base 209 k
- perl-libs x86_64 4:5.10.1-119.el6_1.1 base 575 k
- perl-version x86_64 3:0.77-119.el6_1.1 base 49 k
-
- Transaction Summary
- ================================================================================
- Install 19 Package(s)
- Upgrade 0 Package(s)
-
- Total download size: 14 M
- Installed size: 47 M
- Is this ok [y/N]: y
如果你想在系统启动时自动运行nginx,输入下列命令:
[plain] view
plaincopy
- # chkconfig --level 345 nginx on
第一次启动nginx,输入下列命令:
[plain] view
plaincopy
- # /etc/init.d/nginx start
输出样例
[plain] view
plaincopy
- Starting nginx: [ OK ]
安装PHP-FPM输入下列命令:
[plain] view
plaincopy
- # yum --enablerepo=remi install php php-fpm
Output sample
[plain] view
plaincopy
- Dependencies Resolved
-
- ====================================================================================
- Package Arch Version Repository Size
- ====================================================================================
- Installing:
- php x86_64 5.3.10-2.el6.remi remi 2.3 M
- php-fpm x86_64 5.3.10-2.el6.remi remi 1.1 M
- Installing for dependencies:
- apr x86_64 1.3.9-3.el6_1.2 base 123 k
- apr-util x86_64 1.3.9-3.el6_0.1 base 87 k
- apr-util-ldap x86_64 1.3.9-3.el6_0.1 base 15 k
- httpd x86_64 2.2.15-15.el6.centos.1 updates 813 k
- httpd-tools x86_64 2.2.15-15.el6.centos.1 updates 70 k
- libedit x86_64 2.11-4.20080712cvs.1.el6 base 74 k
- mailcap noarch 2.1.31-2.el6 base 27 k
- php-cli x86_64 5.3.10-2.el6.remi remi 2.2 M
-
- Transaction Summary
- ====================================================================================
- Install 10 Package(s)
- Upgrade 0 Package(s)
-
- Total download size: 6.8 M
- Installed size: 21 M
- Is this ok [y/N]: y
If you want to run php-fpm automatically when the system starts, enter the following command:
[plain] view
plaincopy
- # chkconfig --level 345 php-fpm on
PHP only installs the core module, you are likely to need to install other modules, such as MySQL, XML, GD, etc., you You can enter the following commands:
[plain] view
plaincopy
- # yum --enablerepo=remi install php-gd php-mysql php-mbstring php-xml php-mcrypt
Start php-fpm for the first time, enter the following command:
[plain] view
plaincopy
- # /etc/init.d/php-fpm restart
Output sample
[plain] view
plaincopy
- Starting php-fpm: Configure PHP-FPM and Nginx and let them Work together
nginx configuration file is in /etc/nginx/nginx.conf , enter the following command to edit this file:
[plain] view
plaincopy
View
plaincopy
- ...
- location / {
- index index.html index.htm index.php;
-
}
- … gi_pass 127.0.0.1:9000;
- fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $ document_root$fastcgi_script_name;
- document_root$fastcgi_script_
- Restarting Nginx will re-read the configuration file, enter
-
[plain] view
plaincopy
- # /etc/init.d/nginx reload
-
Now create the following PHP file in the
document root directory
[plain] view
plaincopy
# vi /usr/share/nginx/html/info.php
The file content is as follows:
[plain] view
plaincopy
phpinfo();
Nginx virtual host settingsSetup example
IP: 192.168.1.113Domain: domain.local- Hosted at: /home/www/domain.local
Enter the following commands Create a new user named "www"
[plain] view
plaincopy
# useradd www
Create the necessary directories[plain] view
plaincopy
- # mkdir -p /home/www/domain.local/public_html
- # mkdir -p /home/www/domain.local/log
- # chown -R www.www /home /www/
- # chmod 755 /home/www/
Create virtual host configuration file
[plain] view
plaincopy
- # cd /etc/nginx/conf.d/
- # cp virtual.conf www.conf
Enter the following command to open the www.conf file
[plain] view
plaincopy
- # vi /etc/nginx/conf.d/www.conf
Add the following configuration
[plain] view
plaincopy
-
server Access_log /home/www/domain.local/log/ domain.local-access.log;
-
error_log /home/www/domain.local/log/domain.local-error.log;
,,,,,,,,,,,,,,,,,,,, html index.htm index.php; gi_params; fastcgi_index index.php;
- You can use the following method to check whether the configuration file has syntax errors
- [plain] view
plaincopy
# /etc/init.d/nginx configtest
-
Output sample
-
[plain] view
plaincopy
- the configuration file /etc/nginx/nginx.conf syntax is ok
configuration file /etc/nginx/nginx.conf test is successful
Now edit the /etc/php-fpm.d/www.conf file, change the user running the php-fpm process to "www", enter
[plain] view
plaincopy
- # vi /etc/php-fpm.d/www.conf
Find "group of processes" and edit it as follows:
[plain] view
plaincopy
- ; Unix user/group of processes
- ; Note: The user is mandatory. will be used.
- ; RPM: apache Choosed to be able to access some dir as httpd
- user = www
- ; RPM: Keep a group allowed to write in log dir.
- group = www
-
Finally restart nginx
[plain] view
plaincopy
# /etc/init.d/nginx restart
- # /etc/init.d/php-fpm restart
From: http://blog.csdn.net /seanchan/article/details/7680354
The above introduces how to install Nginx and PHP-FPM through YUM on CentOS 6, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.