MAC下升级PHP到7.1及Nginx安装配置

一路杀怪,在朋友的协助下,总算配置成功。
本地原环境:Apache2.4;PHP5.6;

1. 安装Nginx

  • brew install nginx
  • 现象:一直显示updating homebrew,没有任何反应,我就给终止掉,再次执行brew install nginx,这次安装成功。

1.1 安装成功:

  • 新目录:/usr/local/etc/nginx
  • 主要文件:nginx.conf
  • 主要目录:servers(配置虚拟主机时使用)

1.2 启动Nginx:

  • 由于本地Apache一直在运行,所以先关闭Apache的运行:
    ps aux | grep apache
    kill -9 apached的PID
  • sudo nginx -s reload

1.3 配置server

  • cd servers,在此目录下创建xxx.conf文件
server {
        listen 80;
        server_name phpadmin.com; // 配置本地域名
        root /Users/xxx/xxx/phpmyadmin; // 本地项目路径
        index index.php;

        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;//如果是php文件,就让php-fpm去工作
                # With php-fpm:
                fastcgi_pass unix:/var/run/php71-fpm.sock;  //也可以写成127.0.0.1:9000,如果想使用sock需要 vi php71/php-fpm.d/www.conf 修改listen的设置
                fastcgi_index index.php;
                        fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
                include fastcgi_params;
        }

        access_log /var/log/nginx/xxx.log zqaccess; // zqaccess命名需要与上级目录  nginx.conf 中的log_format命名保持一致
        error_log /var/log/nginx/xxx.err.log;
    }

2. 升级PHP到7.1和安装7.1的php-fpm

  • brew install --without-apache --with-fpm --with-mssql php71
  • 如果你只是想升级php到7.1,而且还想用Apache,这里需要执行brew install --with-http22 或者 --with-http24 --with-mssql php71,这个要根据你Apache的版本了,具体你可以执行brew options php71命令进行查看。如果没有写--with-http24,安装后是不会有libexec/apache2/libphp7.so的。

2.1 安装成功:

  • 新目录:
    /usr/local/etc/php/7.1 主要配置php-fpm
    /usr/local/opt/php71 主要在sbin下启动php-fpm:sudo ./php71-fpm restart
  • 启动php71-fpm如果失败,需要将原来的php-fpm给杀掉,mac原本有低版本的php-fpm。

3. 细节(用户权限问题)

3.1 验证Nginx是否生效

配置好虚拟主机后,在指定目录下,创建一个html文件,如果浏览器能正常显示这个文件,则说明nginx生效。

3.2 验证php能否正常运行

nginx server配置的是php71-fpm.sock,遇到了502错误,查看日志提示,用户权限不足。
nginx server配置修改成127.0.0.1:9000,www.conf的listen也修改成127.0.0.1:9000是可以正常执行php的。

  • 解决502
    ll 查看生成的php71-fpm.sock文件,所属用户不是_www,
    vi /usr/local/etc/nginx/nginx.conf 文件,修改user为_www
    vi /usr/local/etc/php/7.1/php-fpm.d/www.conf,修改user = _www
    group = _www listen.owner = _www listen.group = _www
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 更改ip和dnsVi /etc/sysconfig/network-scripts/ifcfg-eth0vi /...
    Xwei_阅读 5,857评论 0 3
  • 安装Homebrew 安装Homebrew ruby -e "$(curl -fsSL https://raw.g...
    nanhangfei阅读 14,050评论 0 10
  • 1. 下载、解压Nginx cd /usr/local/srcwget http://nginx.org/down...
    石乐志的LK阅读 4,338评论 0 0
  • 背景:本人博客自2014年上线以来,一直使用阿里云ECS最低配的实例,由于最近阿里云ECS进行了升级迁移,原来的低...
    pijh阅读 6,682评论 2 3
  • 回顾一下最近的日子里,除了不舒服还是不舒服!这不又开始牙疼了。前两个月就说要去洗牙,洗了这么久都没有行动,终于抵不...
    云中看花阅读 981评论 0 0