每当涉及到使用内置的PHP mail()方法时,我都会收到Prestashop中的500个内部错误。启用调试模式后,我发现原因是:
(1/1) UndefinedFunctionException
尝试从全局命名空间调用函数"idn_to_ascii“。
在Mail.php第893行
我在谷歌上搜索了这个问题,因为它很可能很常见,并且被一个GitHub googled https://github.com/PrestaShop/PrestaShop/issues/10640击中,该https://github.com/PrestaShop/PrestaShop/issues/10640声明需要php-intl扩展。
由于我使用的PHP版本是7.3,所以我将SSH放入我的VPS并运行sudo apt install php7.3-intl。这样做很好,并安装了扩展程序。但是,在重新启动Apache2服务之后,如下所示:sudo systemctl restart apache2.service。我仍然受到同样的错误信息的打击。
我尝试过编辑我的/etc/php/7.3/apache2/php.ini罚款,以包括在自动加载的extension=intl,但这也没有解决我的问题。
任何信息或帮助,请提前表示感谢。
发布于 2020-01-12 12:05:39
在另一个论坛上听取了一些建议之后,我创建了一个空白文件并输出了phpinfo(),以查看哪个PHP5是默认加载的,因为我的服务器上有PHP5。
这告诉我php5 ini正在被使用。
为了将它更改为我的PHP7.3,我执行了以下操作:
sudo a2dismod php5
sudo a2enmod php7.3这解决了我的问题。
https://stackoverflow.com/questions/59699905
复制相似问题