mail() 在 PHP 中的 localhost (fedora 22) 不发送电子邮件


mail() in PHP on localhost (fedora 22) not sending emails

我在PHP中发送电子邮件时遇到问题,我已经安装了lampp。

在我的 linux 上,我有后缀,当我从我的终端发送时一切正常。例如:这有效并发送电子邮件:

/usr/sbin/sendmail -f -t myaddress@gmail.com < message_body.txt

在我的php中.ini

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP=localhost
; http://php.net/smtp-port
smtp_port=25
; For Win32 only.
; http://php.net/send-from
;sendmail_from = me@example.com
; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path ="/usr/sbin/sendmail -f -t "

这是我的邮件脚本...

$send = mail("me@gmail.com", "My subject", $msg);
    if($send)
    {
        echo "ok";
    }
    else{
        echo "Failed to send";

    }

这是我尝试发送时来自/opt/lamp/logs 的错误日志所说的

/usr/sbin/sendmail: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.54)
/usr/sbin/sendmail: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.54)
/usr/sbin/sendmail: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.54)
/usr/sbin/sendmail: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.54)
/usr/sbin/sendmail: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.54)
/usr/sbin/sendmail: /opt/lampp/lib/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /lib64/libicuuc.so.54)

谢谢你的建议

从您的操作系统中复制 libstdc++.so.6 到 lampp 库文件夹 (/opt/lampp/lib/)。例如在 Ubuntu 22.04.1 LTS 中:

 cp /usr/lib/libstdc++.so.6 /opt/lampp/lib/libstdc++.so.6