http://www.lifelinux.com/how-to-install-nginx-and-php-fpm-on-centos-6-via-yum/

http://blog.csdn.net/seanchan/article/details/7680354

Today, I’m going to show you how to install Nginx with PHP-FPM via yum.

Before starting to install Nginx and PHP-FPM, you must uninstall all previous Apache and PHP related RPMs installed on your system. Login as root and type the following command

# yum remove httpd* php*

Enabling Additional Repositories

By default, php-fpm is not available from the official CentOS repositories, but from the Remi RPM repository which itself depends on the EPEL repository; we can enable both repositories as follows:

# yum install yum-priorities -y
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

Sample outputs

Retrieving http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
warning: /var/tmp/rpm-tmp.00kiDx: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing... ########################################### [100%]
1:epel-release ########################################### [100%]

Installing Nginx

Type the following command

# yum install nginx

Sample outputs

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

If you want to run nginx by default when the system boots, type the following command

# chkconfig --level 345 nginx on

To start Nginx for the first time, type the following command

# /etc/init.d/nginx start

Sample output

Starting nginx:                                            [  OK  ]

Installing PHP-FPM

Type the following command

# yum --enablerepo=remi install php php-fpm

Sample outputs

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 by default when the system boots, type the following command

# chkconfig --level 345 php-fpm on

PHP was installed with only core modules. It’s very likely that additional modules will be desired, such as MySQL, XML, GD, etc. Type the following command

# yum --enablerepo=remi install php-gd php-mysql php-mbstring php-xml php-mcrypt

To start PHP-FPM for the first time, type the following command

# /etc/init.d/php-fpm restart

Sample output

Starting php-fpm:                                          [ OK ]

Configure PHP-FPM and Nginx working together

The configuration file for Nginx is located at /etc/nginx/nginx.conf. To edit nginx.conf type the following command

# vi /etc/nginx/nginx.conf

Uncomment and edit as follows

        ...
location / {
root /usr/share/nginx/html;
index index.html index.htm index.php;
}
...
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
...

Restart Nginx to reload new configuration, enter

# /etc/init.d/nginx reload

Now create the following PHP file in the document root

# vi /usr/share/nginx/html/info.php

Append content as follows:

<?php
phpinfo();
?>

Access it http://YOUR-SERVER-IP

Nginx Virtual Hosting Configuration

Your sample setup
IP: 192.168.1.113
Domain: domain.local
Hosted at: /home/www/domain.local

Type the following command to create user called www

# useradd www

Create necessary directories

# 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/

Creating virtual host config file

# cd /etc/nginx/conf.d/
# cp virtual.conf www.conf

Open www.conf, enter

# vi /etc/nginx/conf.d/www.conf

Append configuration as follows:

server {
server_name domain.local;
root /home/www/domain.local/public_html;
access_log /home/www/domain.local/log/domain.local-access.log;
error_log /home/www/domain.local/log/domain.local-error.log; 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 $document_root$fastcgi_script_name;
}
}

You can also check the current status as well as the configuration syntax:

# /etc/init.d/nginx configtest

Sample outputs

the configuration file /etc/nginx/nginx.conf syntax is ok
configuration file /etc/nginx/nginx.conf test is successful

Now edit /etc/php-fpm.d/www.conf to change the users who own the php-fpm processes to www, enter

# vi /etc/php-fpm.d/www.conf

Find “group of processes” and edit as follows:

; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; 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

# /etc/init.d/nginx restart
# /etc/init.d/php-fpm restart

[转载]How To Install Nginx And PHP-FPM On CentOS 6 Via Yum的更多相关文章

  1. Install NGINX, PHP-FPM (5.6) on CentOS 6

    Installing NGINX with PHP on CentOS 6 can be a hassle depending on the install and packages you use. ...

  2. How to Install Apache Tomcat 8.5 on CentOS 7.3

    How to Install Apache Tomcat 8.5 on CentOS 7.3 From: https://www.howtoforge.com/tutorial/how-to-inst ...

  3. 【转载】CentOS-yum安装Nginx

    查看系统版本 $ cat /etc/redhat-release Nginx 不在默认的 yum 源中,使用官网的 yum 源 $ rpm -ivh http://nginx.org/packages ...

  4. yum install nginx

    先安装nginx的yum源 http://nginx.org/en/linux_packages.html#stable 找到链接,安装: rpm -ivh http://nginx.org/pack ...

  5. centos6.5 64位 yum install nginx的默认安装路径

    yum install nginx网站文件存放默认目录 /usr/share/nginx/html 网站默认站点配置 /etc/nginx/conf.d/default.conf 自定义Nginx站点 ...

  6. 【Ubuntu16.04】 install nginx

    1. Download PGP key in order to pass the authentication of the nginx repository signature. click to ...

  7. mac brew install nginx遇到的坑

    默认使用 brew install nginx 出现了一下的错误: p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: ...

  8. Install Nginx on CentOS 7

    To set up the yum repository for RHEL/CentOS, create the file named /etc/yum.repos.d/nginx.repo with ...

  9. ubuntu16 install nginx

    1,更新系统 sudo apt-get update 2,安装nginx sudo apt-get install nginx 3,验证是否安装成功 curl 127.0.0.1 常用配置文件和命令 ...

随机推荐

  1. cxf怎样提高webservice性能,及访问速度调优

    性能: 1. 启用FastInfoset(快速信息集)webservice的性能实在是不敢恭维.曾经因为webservice吞吐量上不去,对webservice进行了一些性能方面的优化,采用了Fast ...

  2. 取消掉maven

  3. SpringCloud报错:Caused by: org.springframework.context.ApplicationContextException: Unable to start EmbeddedWebApplicationContext due to missing EmbeddedServletContainerFactory bean.

    今天启动用eureka的服务消费者时,一直出现问题. SpringCloud报错: Caused by: org.springframework.context.ApplicationContextE ...

  4. Numpy函数库基础

    利用Numpy函数库构造4*4随机数组,然后将数组转化为矩阵,然后矩阵与其逆矩阵相乘,计算机处理的误差 from numpy import * random.rand(4,4) print(rando ...

  5. json 相关知识

    一:json标准格式: 标准JSON的合法符号:{(左大括号)  }(右大括号)  "(双引号)  :(冒号)  ,(逗号)  [(左中括号)  ](右中括号) JSON字符串:特殊字符可在 ...

  6. windows安装ssh工具opensssh

    本篇教程将告诉你如何在Windows 10设备上启用SSH,让您可以通过命令提示符连接到远程服务器 工具/原料   首先你需要下载windows版本的OpenSSH, 本教程以7.2p1-1版本为例 ...

  7. Java-排序算法-插入排序

    一.插入排序的原理 将一个记录插入到一个已经排好序的有序表中,从而得到一个新的,记录数增1的新的有序表.从第一个元素开始,先将第一个元素看做一个排好序的子序列,然后从第二个元素开始起,对第二个元素进行 ...

  8. 【python】理解循环:for,while

    先看下for结构: #!/usr/bin/python # -*- Coding:UTF-8 -*- for i in range(1): print i 输出: 0 输入和输出: #!/usr/bi ...

  9. Inno Setup安装程序单例运行

    1.源起: KV项目下载底层升级包,老是报出升级文件占用问题,反复分析,不得其所. 今天突然发现同时启动多个升级程序实例,分析认为安装包同时被调用多次,引发实例访问文件冲突,导致此问题. 安装程序由I ...

  10. C++ 中的RTTI机制详解

    前言 RTTI是”Runtime Type Information”的缩写,意思是运行时类型信息,它提供了运行时确定对象类型的方法.RTTI并不是什么新的东西,很早就有了这个技术,但是,在实际应用中使 ...