php邮件功能问题

时间:2009-09-20 18:08:49

标签: php email sendmail

我目前有以下内容,但它无效。 (通常我有正文和标题信息,但没有任何作用)

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

4 个答案:

答案 0 :(得分:1)

这听起来像客户端的服务器没有使用邮件发送处理程序正确设置

答案 1 :(得分:1)

一些ISP提供托管和一些免费托管平台禁用邮件功能,你可以尝试这样的事情:

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产生的任何线程发送邮件。在这种情况下,你没有错误,也没有邮件。