0

我正在使用 Magento 2.3.1 和 PHP 7.2,在管理员端创建客户帐户时遇到错误。

在互联网上找到了一些降低 PHP 版本的资源。

在不降低 PHP 7.2 的情况下还有其他可用选项吗?

日志:

main.CRITICAL:异常消息:不推荐使用的功能:idn_to_ascii():INTL_IDNA_VARIANT_2003 在第 560 行的 /public_html/vendor/zendframework/zend-validator/src/EmailAddress.php 中已弃用

第 560 行的 idn_to_ascii():

return (idn_to_ascii($email) ?: $email);
4

1 回答 1

1

在将服务器的 PHP 版本升级到 7.3 后,我遇到了这个确切的问题。

最初,问题出在像您这样的 Zend 框架上,但在升级到 Magento 2.3.5(试图纠正问题)后,新的 Laminas 出现了相同的错误。

我尝试了许多解决方案,包括将 guzzle 从 6.5.3 降级到 6.5.2,如下所示:https ://stackoverflow.com/a/61596343/9667652

似乎唯一的解决方案是将 PHP 降级到 7.1。即使使用 PHP 7.2,问题仍然存在。我降级到 PHP 7.1,现在正在发送电子邮件。

编辑:根据@user125661 的评论,重要的是要注意不再支持 PHP 7.1:

PHP 7.1 的生命周期已结束。为了保持 PCI 合规性,不应在不受支持的软件上运行 Magento。从 GitHub 安装将不再适用于 Magento 2.3.4/PHP 7.1。使用 PHP 7.1.x 安装 2.3.4 的唯一方法是使用 Composer。Magento 推荐使用 PHP 7.3

请参阅:https ://devdocs.magento.com/guides/v2.3/install-gde/system-requirements-tech.html#php

此问题已反复遇到,但无法可靠地重现,如此处所述:https ://github.com/magento/magento2/issues/19795

看起来问题的最可能原因是运行 CentOS 6 的服务器,其中需要 CentOS 7:https ://github.com/magento/magento2/issues/19795#issuecomment-486432245

最好的办法是将您的服务器安装到 CentOS 7 上,但如果这是不可能的,似乎唯一的解决方法是降级到 PHP 7.1。

于 2020-05-14T10:45:15.570 回答