gpt4 book ai didi

php - macOS Mojave 更新后 Apache 不工作

转载 作者:可可西里 更新时间:2023-11-01 12:26:55 25 4
gpt4 key购买 nike

好的,将 macOS 从 High Sierra 更新到 Mojave 后,带有 PHP 的 Apache 停止正常工作,所以我按照本指南中所说的进行了所有操作 - https://getgrav.org/blog/macos-mojave-apache-multiple-php-versions

但在那之后,apache 仍然无法正常工作,有时工作,有时不工作,并且在浏览器中显示 ERR_CONNECTION_REFUSED 或其他错误,如 404 或 500。

在 apache 日志中是:

[Tue Oct 02 15:02:23.209423 2018] [mpm_prefork:notice] [pid 14579] AH00173: SIGHUP received.  Attempting to restart
[Tue Oct 02 15:02:23.255957 2018] [mpm_prefork:notice] [pid 14579] AH00163: Apache/2.4.35 (Unix) PHP/7.2.10 configured -- resuming normal operations
[Tue Oct 02 15:02:23.256008 2018] [core:notice] [pid 14579] AH00094: Command line: '/usr/local/opt/httpd/bin/httpd'
[Tue Oct 02 15:14:37.626645 2018] [mpm_prefork:notice] [pid 14579] AH00173: SIGHUP received. Attempting to restart
[Tue Oct 02 15:14:37.674603 2018] [mpm_prefork:notice] [pid 14579] AH00163: Apache/2.4.35 (Unix) PHP/7.2.10 configured -- resuming normal operations
[Tue Oct 02 15:14:37.674672 2018] [core:notice] [pid 14579] AH00094: Command line: '/usr/local/opt/httpd/bin/httpd'
[Tue Oct 02 15:28:40.715060 2018] [mpm_prefork:notice] [pid 14579] AH00173: SIGHUP received. Attempting to restart
[Tue Oct 02 15:28:40.752117 2018] [ssl:warn] [pid 14579] AH01909: www.example.com:8443:0 server certificate does NOT include an ID which matches the server name
[Tue Oct 02 15:28:40.766009 2018] [mpm_prefork:notice] [pid 14579] AH00163: Apache/2.4.35 (Unix) OpenSSL/1.0.2p PHP/7.2.10 configured -- resuming normal operations
[Tue Oct 02 15:28:40.766052 2018] [core:notice] [pid 14579] AH00094: Command line: '/usr/local/opt/httpd/bin/httpd'

最佳答案

我在使用 PHP 5.6 时遇到过类似的问题,因为它在 Mojave 升级之前运行良好。我执行了以下操作以成功解决问题:

  1. 运行下面的命令sudo nano/etc/apache2/httpd.conf

  2. 确保以下模块未被注释:

    LoadModule authz_core_module libexec/apache2/mod_authz_core.so

    LoadModule authz_host_module libexec/apache2/mod_authz_host.so

    LoadModule userdir_module libexec/apache2/mod_userdir.so

    LoadModule include_module libexec/apache2/mod_include.so

    LoadModule rewrite_module libexec/apache2/mod_rewrite.so

我已经在 httpd.conf 中添加了缺少的那个

  1. 检查适合您的 php 模块(PHP 5.6 或 7.x)并通过添加行或注释/取消注释行来加载所需的模块

    LoadModule php5_module libexec/apache2/libphp5.so

LoadModule php7_module libexec/apache2/libphp7.so

在行首添加“#”来注释不需要的内容

  1. 运行以下命令以重新启动 apapche 并进行测试一种。 sudo apachectl 重启b. apachectl 配置测试

检查那里是否有任何错误

对于 PHP 5.6:如果您在升级之前已经在系统中安装了带有 brew 的 php 5,并且上述更改会产生如下错误“httpd:/private/etc/apache2/httpd.conf 的第 180 行出现语法错误:无法将 libexec/apache2/libphp5.so 加载到服务器:dlopen(/usr/libexec/apache2/libphp5.so, 10):图像不正确发现”

然后在系统中搜索libphp5.so,找到则复制到"/usr/libexec/apache2/"

在我的例子中命令是

sudo cp ./local/Cellar/php@5.6/5.6.25_1/libexec/apache2/libphp5.so /usr/libexec/apache2/

这一切都让我的系统工作正常

关于php - macOS Mojave 更新后 Apache 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52609414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com