【问题标题】:Homebrew PHP Install Breaks Apache 2.4Homebrew PHP 安装破坏了 Apache 2.4
【发布时间】:2017-04-25 07:11:12
【问题描述】:

当我最近通过 Homebrew 安装 PHP56 时,Apache 将不再启动,日志中出现以下错误:

无法将 /usr/local/opt/php56/libexec/apache2/libphp5.so 加载到服务器中:dlopen(/usr/local/opt/php56/libexec/apache2/libphp5.so, 10): 找不到图像

注意:我在 Mac El-Capitan 上运行 Apache 2.4。

如何解决此错误并让 Apache 重新运行?

【问题讨论】:

    标签: apache homebrew


    【解决方案1】:

    我以前见过这个。如果你brew options php56,它会说:

    随着 macOS Sierra 的发布,Apache 模块现在不是默认构建的。如果你想在你的系统上构建它 您必须使用 --with-apache 选项安装 php。有关详细信息,请参阅 brew options php56。

    因此,尝试卸载 (brew uninstall php56) 然后重新安装带有标志 --with-apache 的 php56 用于 Apache v2.4.x(--with-apache22 用于 Apache 2.2)。通常,您可以通过在命令行中输入:httpd -v 来检查您的 Apache 版本。

    我的版本是 2.4.18,所以我会 brew install php56 --with-apache,它会创建正确的文件路径 /usr/local/opt/php56/libexec/apache2/libphp5.so

    现在,它已使用 Apache Handler 模块正确编译。

    重要提示:使用此选项安装 php56 似乎也安装了 httpd24。从brew 程序的立场来看,这是有道理的。但是,这可能会破坏您的服务器设置。如果您不想使用 brew 的 Apache 安装,请在此之后执行 brew unlink httpd24

    要查看其他 brew 构建选项,请尝试 brew options php56

    【讨论】:

    • 我回来问你一些奇怪的 apache 行为(绑定到与我最初配置不同的端口等) - 你已经添加了这个 brings apache 的注释。一旦我删除了自制 apache,一切都开始正常工作。谢谢!
    • 在 Apache/2.4.28 我需要做brew install php56 --with-httpd
    猜你喜欢
    • 2015-07-22
    • 1970-01-01
    • 2017-11-12
    • 1970-01-01
    • 1970-01-01
    • 2014-05-04
    • 2016-08-23
    • 1970-01-01
    • 2014-02-18
    相关资源
    最近更新 更多