MacOS Homebrew配置Nginx + PHP7

安装Nginx及配置

命令如下:

brew install nginx

安装完成后显示如下信息:
nginx

启动nginx

sudo nginx

如果成功启动,就可以在浏览器中输入:http://localhost:8080,会出现如下内容:
nginx-success

安装PHP

我的MacOS(10.15.3)自带的是php7.1.9,自带的php有一个问题就是缺乏zip扩展,这样在运行一些php程序的时候就会出错,比如我要安装laravel,在运行composer global require laravel/installer命令的时候会提示缺少zip扩展:The requested PHP extension ext-zip * is missing from your system. Install or enable PHP's zip extension.,然后各种百度,谷歌也没发现如何安装自带php的扩展,最终的解决方法是通过homebrew安装新的php(https://stackoverflow.com/questions/58290566/install-ext-zip-for-mac)
命令如下:

brew install php@7.4

运行上面的命令我遇到的问题是Error: Could not symlink sbin/php-fpm;/usr/local/sbin is not writable.说的是无法链接php-fpm,/usr/local/sbin文件夹不可写。
解决方法:
运行brew doctor,然后按照提示输入对应的命令就可以了。大致的步骤是:

  1. 创建sbin文件夹, mkdir /usr/local/sbin,
  2. 给予写入权限, sudo chown -R username:admin /usr/local/sbin,
  3. 运行, brew link php@7.4
  4. 退出终端,重新打开终端,查看php版本已经变成了7.4.2, php -v

设置好php后,运行php-fpm会发现版本还是原来的7.1.9,并没有一并更新过来,需要手动去更新,步骤如下:

  1. ln -s /usr/local/Cellar/php/7.4.2/sbin/php-fpm /usr/local/bin/php-fpm
  2. 关闭终端,重新打开,运行php-fpm就发现版本已经更新过来了

配置虚拟主机

我的做法是在nginx文件夹下创建conf.d文件夹,然后在nginx.conf中加入如下代码:

include /usr/local/etc/nginx/conf.d/*

这样做的好处是便于管理,当然还有很多比如创建sites-enabled等的做法,按个人喜好来吧。
虚拟主机代码如下:

server {
    #监听端口
    listen    80;
    #虚拟主机域名
    server_name  test.com;
    #网站根目录
    root /Yourpath;
    #定义路径下默认访问的文件名
    index index.php index.html;
    location / {
        try_files $uri $uri/ /index.php?$query_string;

        #打开目录浏览功能,可以列出整个目录
        #autoindex on;
    }

    access_log /usr/local/var/log/nginx/test.com-access.log main;
    error_log /usr/local/var/log/nginx/test.com-error.log error;

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    location ~ \.php$ {
        fastcgi_pass     127.0.0.1:9000;
        fastcgi_index    index.php;
        include          fastcgi_params;
        fastcgi_param    SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    }
}

配置好后就是本地host指向和重启nginx,还有不要忘记启动php-fpm

sudo nginx -s reload
sudo php-fpm

若你觉得我的文章对你有帮助,欢迎点击上方按钮对我打赏

扫描二维码,分享此文章