1

所以我正在做一个需要 php5.6 才能工作的旧项目。

由于我厌倦了 Homestead,我决定切换到 Laravel/Valet,但 Valet 使用 PHP 7 运行。

我从那个讨论中读到,一种配置我想要的方法是使用 Caddy 但是当我查看~/.valet文件夹时,我没有看到任何 Caddy 文件夹,而是看到了 Nginx。

那么在这种情况下 Valet 是否更改了他的服务器配置,我应该在 Nginx 中创建一个文件来指定我的配置,还是我必须自己安装 Caddy,如果是,我如何告诉 Valet 使用 Caddy

4

2 回答 2

2

您可以使用 home brew 安装多个版本的 PHP。要安装 php56,您需要先取消链接 php70

brew unlink php70

并通过安装 php56 来跟进

brew install php56

现在您将在命令行上看到 php56,但是可能会有一个挥之不去的 php70 fpm 进程。要停止它,您需要运行:

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.php70.plist

并加载 php56 fpm

launchctl load -w  /usr/local/opt/php56/homebrew.mxcl.php56.plist

如果你想让 php56 fpm 在启动时启动

cp /usr/local/opt/php56/homebrew.mxcl.php56.plist ~/Library/LaunchAgents/

要切换回 php70,只需运行上述相反的操作。

于 2017-05-19T02:18:00.140 回答
1

我使用sphp在 macOS sierra 上切换 PHP

$ sphp 56

$ sphp 70

$ sphp 71

切换代客 PHP 只需遵循 3 个步骤

  1. valet stop

  2. sphp [56|70|71|72]

  3. valet start

如果您发现 NGINX 错误,请检查位于以下位置的日志:

  • /usr/local/var/log/php-fpm.log
  • /usr/local/var/log/nginx/error.log

如果 PHP fpm 退出,你必须匹配你用于安装代客的 PHP 版本,比较版本配置和其他。比较 7.0 和 5.6:

  • /usr/local/etc/php/7.0/php-fpm.d/www.conf
  • /usr/local/etc/php/5.6/php-fpm.d/www.conf

代客泊车的重要配置是

  1. Unix 用户/进程组

    user = _www
    group = _www
    
  2. 接受 FastCGI 请求的地址。

    listen = /Users/[your_mac_user_name]/.valet/valet.sock
    
  3. 设置 unix 套接字的权限

    listen.owner = _www
    listen.group = _www
    listen.mode = 0777
    
于 2017-11-28T16:34:22.420 回答