macOS Sierra 破坏了 XAMPP 上的 WP Admin

macOS Sierra 破坏了 XAMPP 上的 WP Admin

升级到 MacOS Sierra 并使用 Xampp 5.6.X 后,还有其他人遇到此问题吗?

多年来一直使用 Xampp 测试 WordPress,从来没有遇到过问题,但现在似乎对 WordPress 的外部调用已被阻止。

我认为这是 MacOS 引入的安全“功能”,但我似乎无法确定如何更改它。

症状:

  • 当我加载 WP 网站的前端时,该网站会立即加载。
  • 加载不使用 Wordpress 的本地网站也是即时的
  • 我登录 WordPress 管理面板(仪表板)后,需要 10-20 秒才能加载,有时会出现“您的连接已重置”(在 Firefox 上)

  • 当 DEBUG 打开时,我可以在插件页面上看到这一点:

发生错误。WordPress.org 或此服务器的配置可能有问题。如果您继续遇到问题,请尝试支持论坛。(WordPress 无法与 WordPress.org 建立安全连接。请联系您的服务器管理员。)位于 /Applications/XAMPP/xamppfiles/htdocs/site/wp-admin/includes/plugin-install.php 第 158 行

  • 如果我添加: define('WP_HTTP_BLOCK_EXTERNAL', true); 到我的wp-config.php,后端会立即加载,但是添加插件和仪表板新闻不再起作用。

我尝试更新我的 .CA 包Curl 官方网站并确保它在我的 php.ini 中指向正确,但它不起作用。

还有人遇到过这种情况吗?错误似乎与通过 PHP 的出站连接有关...我应该在哪里查找?谢谢!

答案1

经过更多测试后,我编写了以下脚本:

include('wp-config.php');

$url = "http://api.wordpress.org/plugins/info/1.0/";

$http_args = array(
            'timeout' => 15,
            'body' => array(
                'action' => $action,
                'request' => serialize( $args )
            )
        );


print_r($request = wp_remote_post( $url, $http_args ));

果然我发现了这个错误:

cURL error 6: name lookup timed out

结果是 DNS 问题,因此我去了:

系统偏好设置 > 网络 > 高级 > DNS,将默认 DNS 更改为8.8.8.88.8.4.4Google 的公共 DNS),瞧,它起作用了。我希望这对其他人有所帮助。

答案2

从技术上来说这不是一个解决方案,但是遇到这个问题后,我开始使用 OSX 内置的 Apache,下载了 SQL Server 等。我花了一段时间才弄明白,但是问题解决了。

相关内容