> 백엔드 개발 > PHP 튜토리얼 > Ubuntu升级php7.0配置fpm socket

Ubuntu升级php7.0配置fpm socket

WBOY
풀어 주다: 2016-06-20 12:41:16
원래의
1149명이 탐색했습니다.

简单说

--(我也就知道这么多)--,nginx处理请求是通过fpm(来管理fastcgi的)来实现请求和响应。

而nginx和php-fpm可以通过监听9000端口(默认)或者socket来实现。

而9000的格式是127.0.0.1:9000,是走网络的。通过ngxin的conf文件,把.php结尾的都交给9000端口处理,php-fpm(fastggi的进程管理器)选择并连接到一个fastcgi子进程,并将环境变量和标准输入发送到fastcgi子进程,然后不断的处理请求响应

socket文件就不走网络,是套接字。

好,至于速度对比和优化配置,先不说。

先说ubuntu(14.10 lts)升级php7

sudo add-apt-repository ppa:ondrej/php-7.0sudo apt-get updatesudo apt-get install php7.0-fpm
로그인 후 복사

升级完成后,之前的fpm文件还在。可以酌情参考或者删除

php -vPHP 7.0.1-4+deb.sury.org~trusty+1 (cli) ( NTS )Copyright (c) 1997-2015 The PHP GroupZend Engine v3.0.0, Copyright (c) 1998-2015 Zend Technologies    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015,     by Zend     Technologies   
로그인 후 복사

更改phpfpm监听9000端口为socket (默认就是socket)

php7默认的是socket,所以如果按照之前nginx -conf文件,php文件处理会报502错误。
默认的sock是在php配置文件中的,pool.d中的www.conf

root@tb:/etc/php/7.0/fpm# pwd/etc/php/7.0/fpmroot@tb:/etc/php/7.0/fpm# lsconf.d  php-fpm.conf  php.ini  pool.droot@tb:/etc/php/7.0/fpm# 
로그인 후 복사

在这两行:

listen = /run/php/php7.0-fpm.sock; listen = 127.0.0.1:9000
로그인 후 복사

## 更改nginx conf文件 ##

nginx 配置文件我的是在

  root@tb:/etc/nginx/conf.d# ls  git.conf  svn.conf  tb.conf 
로그인 후 복사

修改其中的git.conf如下

 server{    listen 80;    server_name git.com ;    root /home/gittest/;    autoindex on;  location ~ \.php$ {    root           /home/gittest;    #fastcgi_pass   127.0.0.1:9000;    fastcgi_pass    unix:/run/php/php7.0-fpm.sock;    fastcgi_index  index.php;    fastcgi_intercept_errors        on;    fastcgi_param  SCRIPT_FILENAME  /home/gittest/$fastcgi_script_name;    include        fastcgi_params;    }}
로그인 후 복사

重启php-fpm和nginx

    root@tb:/etc/nginx/conf.d# service nginx reload     * Reloading nginx configuration nginx                                                                           [ OK ]          root@tb:/etc/nginx/conf.d# service php7-fpm status     * php-fpm7.0 is running    root@tb:/etc/nginx/conf.d# service php7-fpm reload     * Reloading PHP 7.0 FastCGI Process Manager php-fpm7.0[ OK ]     root@tb:/etc/nginx/conf.d#     
로그인 후 복사

要注意是ok才可以,具体的nginx和fpm的脚本执行文件(可自己修改)在:

    root@tb:/etc/init.d# ls /etc/init.d/ |grep php7    php7-fpm    root@tb:/etc/init.d# ls /etc/init.d/ |grep nginx    nginx    root@tb:/etc/init.d#
로그인 후 복사

最后,进阶的同学可参考Nginx+PHP-FPM优化技巧总结

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿