六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 560|回复: 0

如何在CentOS 6上通过YUM安装Nginx和PHP-FPM

[复制链接]
 楼主| 发表于 2014-5-27 19:01:42 | 显示全部楼层 |阅读模式
如何在CentOS 6上通过YUM安装Nginx和PHP-FPM

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


开始安装Nginx和PHP-FPM之前,你必须卸载系统中以前安装的Apache和PHP。用root登录输入下面的命令:
[plain] view plaincopy

  • # yum remove httpd* php*  


增加额外资源库

    默认情况下,CentOS的官方资源是没有php-fpm的, 但我们可以从Remi的RPM资源中获得,它依赖于EPEL资源。我们可以这样增加两个资源库:


[plain] view plaincopy



输出样例

[plain] view plaincopy

  • Retrieving http://download.fedora.redhat.co ... ease-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%]  


安装Nginx

输入下列命令


[plain] view plaincopy

  • # yum install nginx  

输出样例
[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  


输出样例

[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  


如果你想在系统启动时自动运行php-fpm,输入下列命令:

[plain] view plaincopy

  • # chkconfig --level 345 php-fpm on  


PHP仅安装了核心模块,你很可能需要安装其他的模块,比如MySQL、 XML、 GD等等,你可以输入下列命令:

[plain] view plaincopy

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


第一次启动php-fpm,输入下列命令:

[plain] view plaincopy

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


输出样例

[plain] view plaincopy

  • Starting php-fpm:                                          [ OK ]  

配置PHP-FPM和Nginx,让他们一起工作nginx的配置文件在/etc/nginx/nginx.conf,输入下列命令编辑这个文件:
[plain] view plaincopy

  • # vi /etc/nginx/nginx.conf  


像下面这样编辑取消注释:
[plain] view plaincopy

  •        ...  
  • 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;  
  •        }  
  •        ...  


重启Nginx会重新读取配置文件,输入
[plain] view plaincopy

  • # /etc/init.d/nginx reload  


现在在document root目录下建立下列PHP文件

[plain] view plaincopy

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


文件内容如下:

[plain] view plaincopy

  • <?php  
  • phpinfo();  
  • ?>  


访问 http://YOUR-SERVER-IP


Nginx虚拟主机设置

设置例子

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

输入下列命令新建名叫“www”的用户

[plain] view plaincopy

  • # useradd www  

创建必要的目录

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


创建虚拟主机配置文件

[plain] view plaincopy

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


输入下面命令打开www.conf文件

[plain] view plaincopy

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


增加以下配置

[plain] view plaincopy

  • 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;  
  •         }  
  • }  


你可以用下列方法检查配置文件是否有语法错误

[plain] view plaincopy

  • # /etc/init.d/nginx configtest  


输出样例

[plain] view plaincopy

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


现在编辑/etc/php-fpm.d/www.conf文件,将运行php-fpm进程的用户改为“www”,输入

[plain] view plaincopy

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

找到“group of processes”,编辑成下面的样子:

[plain] view plaincopy

  • ; 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  


最后重启nginx

[plain] view plaincopy

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



如何在CentOS 6上通过YUM安装Nginx和PHP-FPM

该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表