我目前有以下内容,但它无效。 (通常我有正文和标题信息,但没有任何作用)
mail("idealvisions@live.com","Nieuw offerte aanvraag","test");
我们将在我的服务器上,因为我运行的是PHP 5或更高版本,没问题。但是联系页面来自运行php 4.4 的客户端。我相信。现在客户真的在推动我修复这个问题,但似乎无法修复。我已经尝试了一切
这里有什么问题?是php版本吗?
我也用phpinfo检查了这个
sendmail_from no value no value sendmail_path /usr/local/bin/bgc_webhosting_mailer.sh /usr/local/bin/bgc_webhosting_mailer.sh
答案 0 :(得分:1)
这听起来像客户端的服务器没有使用邮件发送处理程序正确设置
答案 1 :(得分:1)
error_reporting(E_ALL);
if (mail ('you@yourdomain.com', 'Test subject', 'Test Body')){
echo 'Mail sent';
}else{
echo 'Mail not sent';
}
如果他们的服务器上的mail()存在问题,您可以考虑在其中一台服务器上发布邮件表单,然后将其反弹回客户端服务器上的一个谢谢页面。
答案 2 :(得分:1)
从sendmail路径,您的主机使用自定义sendmail程序/ shell脚本。
由于未设置sendmail,因此您必须在mail()函数中设置它,除非它被硬编码到/usr/local/bin/bgc_webhosting_mailer.sh
中,在这种情况下您应该询问托管。
示例设置发件人:
mail('recepient@example.com', 'Test subject', 'Test Body', "from:sender@example.com\n");
如果mail()函数确实不可用,请询问您的托管有关替代方案,例如其本地SMTP服务器。
然后,您可以使用本地SMTP服务器发送电子邮件。可能最简单的方法是下载一个支持通过SMTP发送的电子邮件库,例如PEAR Mail或SwiftMailer。
梨子:http://pear.php.net/package/Mail 斯威夫特:http://swiftmailer.org/
如果您的主机未提供SMTP服务器,您应该寻找其他主机。但是,您始终可以使用Gmail或Yahoo等免费电子邮件服务,并通过SMTP发送邮件。
答案 3 :(得分:0)
同时检查SeLinux,它可以防止Apache产生的任何线程发送邮件。在这种情况下,你没有错误,也没有邮件。