记一次lnmp经历 nginx 多个php版本支持配置

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

先叨叨点基本知识:

一个http请求,首先来到服务器的时候 nginx 监听的80端口会接收到这个请求,然后发给对应的 cgi程序进行处理,此处就是php-fpm进程。

问题情景:公司买了个方维o2o商城只能支持php5.3,此时开发自己应用的时候,已经centos6.5和php7了。

解决方法:yum install php php-fpm  默认就安装了5.3了

然后找一下php-fpm.conf 打开 找到 监听项 发现 /etc/php-fpm.d/*.conf 所以 去/etc/php-fpm.d/这里找 www.conf 打开发现listen = 127.0.0.1:9000 这个就是监听项了,把它改成listen = 127.0.0.1:9001。

接下来去对应的nginx的conf中配置对应文件,我的配置如下:

server {
     listen 80;
     server_name www.a.com;
     index index.php;
     root /home/www/test;
        location / {
                        index index.php;
                        if ( !-e $request_filename){
                                rewrite ^/(.*)$ /index.php?s=$1 last;
                                break;
                        }
                }

                location ~ .*\.(php|php5)?$
                        {
                              try_files $uri =404;
                              fastcgi_pass  127.0.0.1:9001;
                              fastcgi_index index.php;
                              include fcgi.conf;
                        }

     access_log  /home/wwwlogs/www.a.com.log post_access;
    if ( $fastcgi_script_name ~ \..*\/.*php )
      {
        return 403;
      }
        location ~ (.*\.sh?$|/\.)
        {
                return 403;
        }
}

保存之后 重启nginx然后再启动php-fpm 两个版本的都要启动。记一次lnmp经历 nginx 多个php版本支持配置_第1张图片这就搞定了。分别去试试phpinfo,两个不同的版本就显示出来了。

转载于:https://my.oschina.net/zwyang/blog/723519

你可能感兴趣的:(记一次lnmp经历 nginx 多个php版本支持配置)