分享

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

 用勿龍潛 2012-12-21
在CentOS 6上通过YUM安装Nginx和PHP-FPM
原文地址:http://www./how-to-install-nginx-and-php-fpm-on-centos-6-via-yum/


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

# yum remove httpd* php*

增加额外资源库

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

# yum install yum-priorities -y
  1. # rpm -Uvh http://download./pub/epel/6/i386/epel-release-6-7.noarch.rpm
  2. # rpm -Uvh http://rpms./enterprise/remi-release-6.rpm

输出样例

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

安装Nginx

输入下列命令

# yum install nginx
输出样例

Dependencies Resolved
  1. ================================================================================
  2. Package Arch Version Repository Size
  3. ================================================================================
  4. Installing:
  5. nginx x86_64 0.8.54-1.el6 epel 358 k
  6. Installing for dependencies:
  7. GeoIP x86_64 1.4.8-1.el6 epel 620 k
  8. fontconfig x86_64 2.8.0-3.el6 base 186 k
  9. freetype x86_64 2.3.11-6.el6_1.8 updates 358 k
  10. gd x86_64 2.0.35-10.el6 base 142 k
  11. libX11 x86_64 1.3-2.el6 base 582 k
  12. libX11-common noarch 1.3-2.el6 base 188 k
  13. libXau x86_64 1.0.5-1.el6 base 22 k
  14. libXpm x86_64 3.5.8-2.el6 base 59 k
  15. libjpeg x86_64 6b-46.el6 base 134 k
  16. libpng x86_64 2:1.2.46-1.el6_1 base 180 k
  17. libxcb x86_64 1.5-1.el6 base 100 k
  18. libxslt x86_64 1.1.26-2.el6 base 450 k
  19. perl x86_64 4:5.10.1-119.el6_1.1 base 10 M
  20. perl-Module-Pluggable x86_64 1:3.90-119.el6_1.1 base 37 k
  21. perl-Pod-Escapes x86_64 1:1.04-119.el6_1.1 base 30 k
  22. perl-Pod-Simple x86_64 1:3.13-119.el6_1.1 base 209 k
  23. perl-libs x86_64 4:5.10.1-119.el6_1.1 base 575 k
  24. perl-version x86_64 3:0.77-119.el6_1.1 base 49 k
  25. Transaction Summary
  26. ================================================================================
  27. Install 19 Package(s)
  28. Upgrade 0 Package(s)
  29. Total download size: 14 M
  30. Installed size: 47 M
  31. Is this ok [y/N]: y

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

# chkconfig --level 345 nginx on

第一次启动nginx,输入下列命令:

# /etc/init.d/nginx start

输出样例

Starting nginx: [ OK ]

安装PHP-FPM

输入下列命令:

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

输出样例

Dependencies Resolved
  1. ====================================================================================
  2. Package Arch Version Repository Size
  3. ====================================================================================
  4. Installing:
  5. php x86_64 5.3.10-2.el6.remi remi 2.3 M
  6. php-fpm x86_64 5.3.10-2.el6.remi remi 1.1 M
  7. Installing for dependencies:
  8. apr x86_64 1.3.9-3.el6_1.2 base 123 k
  9. apr-util x86_64 1.3.9-3.el6_0.1 base 87 k
  10. apr-util-ldap x86_64 1.3.9-3.el6_0.1 base 15 k
  11. httpd x86_64 2.2.15-15.el6.centos.1 updates 813 k
  12. httpd-tools x86_64 2.2.15-15.el6.centos.1 updates 70 k
  13. libedit x86_64 2.11-4.20080712cvs.1.el6 base 74 k
  14. mailcap noarch 2.1.31-2.el6 base 27 k
  15. php-cli x86_64 5.3.10-2.el6.remi remi 2.2 M
  16. Transaction Summary
  17. ====================================================================================
  18. Install 10 Package(s)
  19. Upgrade 0 Package(s)
  20. Total download size: 6.8 M
  21. Installed size: 21 M
  22. Is this ok [y/N]: y

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

# chkconfig --level 345 php-fpm on

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

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

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

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

输出样例

Starting php-fpm: [ OK ]

配置PHP-FPM和Nginx,让他们一起工作

nginx的配置文件在/etc/nginx/nginx.conf,输入下列命令编辑这个文件:
# vi /etc/nginx/nginx.conf

像下面这样编辑取消注释:
  1. location / {
  2. root /usr/share/nginx/html;
  3. index index.html index.htm index.php;
  4. }
  5. ...
  6. location ~ \.php$ {
  7. root html;
  8. fastcgi_pass 127.0.0.1:9000;
  9. fastcgi_index index.php;
  10. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  11. include fastcgi_params;
  12. }
  13. ...

重启Nginx会重新读取配置文件,输入
# /etc/init.d/nginx reload

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

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

文件内容如下:

<?php
  1. phpinfo();
  2. ?>

访问 http://YOUR-SERVER-IP


Nginx虚拟主机设置

设置例子

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

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

# useradd www
创建必要的目录

# mkdir -p /home/www/domain.local/public_html
  1. # mkdir -p /home/www/domain.local/log
  2. # chown -R www.www /home/www/
  3. # chmod 755 /home/www/

创建虚拟主机配置文件

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

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

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

增加以下配置

server {
  1. server_name domain.local;
  2. root /home/www/domain.local/public_html;
  3. access_log /home/www/domain.local/log/domain.local-access.log;
  4. error_log /home/www/domain.local/log/domain.local-error.log;
  5. location / {
  6. index index.html index.htm index.php;
  7. }
  8. location ~ \.php$ {
  9. include /etc/nginx/fastcgi_params;
  10. fastcgi_pass 127.0.0.1:9000;
  11. fastcgi_index index.php;
  12. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  13. }
  14. }

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

# /etc/init.d/nginx configtest

输出样例

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

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

# vi /etc/php-fpm.d/www.conf
找到“group of processes”,编辑成下面的样子:

; Unix user/group of processes
  1. ; Note: The user is mandatory. If the group is not set, the default user's group
  2. ; will be used.
  3. ; RPM: apache Choosed to be able to access some dir as httpd
  4. user = www
  5. ; RPM: Keep a group allowed to write in log dir.
  6. group = www

最后重启nginx

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

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多