由Homebrew安装的PHP7不适用于macOS上的Apache。

2022-08-30 14:32:22

我正在尝试升级到我通过自制软件安装的php7。

在 CLI php 中 -v 返回

PHP 7.0.10 (cli) (built: Aug 21 2016 19:14:33) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies

但是对于localhost,firefox弹出了一个问题加载页面,我无法查看localhost / phpinfo.php;如果我将模块行交换回php5,它工作正常。

这是我apache2 / httpd.conf的粘贴 http://pastebin.com/950yC7wA,我不知道如何解决这个问题。

  • osx 版本 El Capitan 10.11

答案 1

确保:

  • 您已按照以下说明操作:brew info php@7.1

    ==> Caveats
    To enable PHP in Apache add the following to httpd.conf and restart Apache:
        LoadModule php7_module /usr/local/opt/php@7.1/lib/httpd/modules/libphp7.so
    
        <FilesMatch \.php$>
            SetHandler application/x-httpd-php
        </FilesMatch>
    
    Finally, check DirectoryIndex includes index.php
        DirectoryIndex index.php index.html
    
  • 您通过 重新启动了 Apache。sudo apachectl restart

有关分步教程,请参阅:在macOS Sierra上使用Homebrew设置Apache,MySQL和PHP

故障 排除

  • 当某些内容不起作用时,请通过以下方式实时检查日志:

    tail -f /usr/local/var/log/apache2/*error*
    

    然后启动/重新启动服务器。

    注意:完成后,点击 Control-C 退出尾部


答案 2

虽然Homebrew是一个出色的工具,但有时它是不必要的。

我在关于在Mac OS X上安装Apache,PHP和MySQL的帖子中提到,OS X预装了Apache和PHP。因此,您只需配置并启用它们即可。

不幸的是,从Mac OS 10.11(El Capitan)开始,PHP版本仍然是5.5。我想这将随着10.12(Sierra)而改变,因为PHP 5.5是EOL。但是,它可能只有 PHP 5.6。

对于安装PHP 7,我建议使用PHP OSX。他们提供PHP版本5.3至7.1(最新)的软件包安装。它适用于Mac OS 10.6 +(Snow Leopard)。

由于它是软件包安装,因此它使用默认的Apache安装开箱即用。您只需要更新和修改他们的PHP ini文件。这两者都在其常见问题解答中进行了概述。PATH

如果你想要一个更多的分步教程,看看我最近关于在Mac OS X上更新PHP的帖子。


推荐