【问题标题】:WordPress using PHP7.3 in public_html, but MySQL extension error only showing in the dashboardWordPress 在 public_html 中使用 PHP7.3,但 MySQL 扩展错误仅显示在仪表板中
【发布时间】:2020-05-21 14:35:49
【问题描述】:

我最近从 PHP 7.1 升级到了 7.3。 public_htmlwp_contentwp_includes 中的 .htaccess 文件均显示:

AddHandler application/x-httpd-ea-php73 .php .php5 .phtml
<IfModule mod_suphp.c>
    suPHP_ConfigPath /opt/php71/lib
</IfModule>

wp_admin 设置为AddHandler application/x-httpd-php71 .php,因为当我将其设置为 7.3 时,我收到以下错误:

警告:在第 141 行的 /home3/my-domain/public_html/wp-includes/load.php 中使用未定义的常量 WP_CONTENT_DIR - 假定为“WP_CONTENT_DIR”(这将在 PHP 的未来版本中引发错误)

您的 PHP 安装似乎缺少 WordPress 所需的 MySQL 扩展。

根据我在 WordPress 支持上找到的建议,我将 define('WP_CONTENT_DIR', ABSPATH .'wp-content'); 添加到 wp-config。这消除了 Undefined Constant 错误,但 MySQL 错误仍然存​​在。

由于 MySQL 已被弃用,我假设我不需要下载这些扩展,而是需要让 WordPress 停止查找它们并改用 mysqli。但这不应该在 7.1 和 7.3 之间产生差异,不是吗?为什么 7.3 对站点运行良好,但对仪表板却不行?

如果解决方案最终超出了我的想象(我不想搞砸我以后不知道如何解决的事情),那么在开发和生产中使用 7.3 会不会有任何问题,而仪表板使用 7.1?

【问题讨论】:

    标签: php mysql wordpress


    【解决方案1】:

    在与 HostGator 的技术支持合作后,我们更正了以下 home/.htaccess 中的语法。

    <IfModule mime_module>
      AddHandler application/x-httpd-ea-php73 .php .php7 .phtml
    </IfModule>
    

    我假设从 .php5 扩展名到 .php7 的更改调用了正确的 SQL 扩展名。我还删除/注释掉了子目录(包括 wp-admin)中的所有 PHP 语句,并删除了 wp-config 中的 WP_CONTENT_DIR 定义。到目前为止一切正常!

    【讨论】:

    • 是的,它对我有用。我刚刚在 htaccess 中添加了代码。来自我的支持
    【解决方案2】:

    请参阅以下帖子,该帖子解释了 PHP 版本更新到 7.3 和第 141 行的 load.php 与 MySQL 的问题。 Wordpress 可能存在需要修复的错误。

    https://wordpress.org/support/topic/php-7-3-errors/#post-12720824

    【讨论】:

    • 您的帖子更适合作为评论而不是答案。在您获得一定的声望点后,您将能够在其他问题/答案上发布 cmets。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-16
    • 2021-08-13
    • 2015-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多