用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

php mail()邮件发送配置方法

时间:2015-01-23  来源:西部数据  作者:西部数据

这两天写了个方法用到php mail()本以为php提供的这个方法非常简单、方便、易用,其实不然!

php mail()函数需要配置才可以发邮件的哦,下面配置方法:

如果你没有使用windows,那么sendmail_path指令就是你唯一要担心的东西.如果你正在使用Windows,你就需要看看最后两个指令.

如果你使用的是Linux或是一个Unix变种,sendmail_path看起来应该象这样:

sendmail_path = /usr/sbin/sendmail

或者如果你使用Qmail:

sendmail_path = /var/qmail/bin/sendmail

在PHP mail()函数中的这条指令里,你还可以设置配置参数来指明队列缓冲选项或是显示的设置Return-Path头,如下所示:

sendmail_path = /usr/sbin/sendmail -t -fyou@yourdomain.com

作为一个非Windows用户,这就是你要做的一切了.如果你使用的是Windows,你有更多的事情要做.你还需要看一看SMTP和sendmail_from的值.不要被sendmail_from指令名字中的sendmail弄迷糊了.虽然你没有在Windows上使用名叫Sendmail的程序,但那只是指令的名字.不要被它吓到了.

在你的phpinfo()显示的结果里,看看SMTP和sendmail_from的缺省值--它们要么是空白,要么包含了胡乱的值.你应该把它们改成有意义的值.

如果你决心在这台电脑上运行一个SMTP服务程序,你在php.ini文件中的条目就应该如下:SMTP = localhost

但是,如果你要使用你ISP(在这个例子中是EarthLink)的外发邮件服务器,那么php.ini中的邮件看起来应该如下:SMTP = mail.earthlink.net

你也可以使用IP地址而不是域名,因为计算机不区分这两种条目.

第二条配置指令是sendmail_from,它应该被设置成From头中的电子邮件地址.它可以在脚本里被修改但是通常作为缺省值使用.下面就是这个配置指令的示例youraddress@yourdomain.com指的是你自己的邮件地址,代码如下:

sendmail_from = youraddress@yourdomain.com

发送一个简单的电子邮件,代码如下:

  1. $txt = "First line of textnSecond line of text"
  2. // Use wordwrap() if lines are longer than 70 characters 
  3. $txt = wordwrap($txt,70); 
  4. // Send email 
  5. mail("somebody@example.com","My subject",$txt); 

刚开始感觉非常不错,网易邮箱、QQ邮箱、GMAIL邮箱常用的邮箱都可以收到,但经测试HOTMAIL、TOM、LIVE等邮箱是收不到此类邮件的!

经查询邮件发送的时候,一般都需要身份验证,而PHP自带的mail()无能为力,很脆弱啊!

来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
栏目更新
栏目热门