搜索
查看: 18553|回复: 1

[网站] iis下php 通过 PHP 函数的 sendmail 发送的配置方法

[复制链接]
发表于 2012-9-2 08:29:24 | 显示全部楼层 |阅读模式
  最近研究uchome,使用在线发邮件的功能,但是测试了"通过 PHP 函数的 sendmail 发送(推荐此方式)"怎么都没用,因为本人现在用的是iis+php环境,怎么调试都没有用,经过研究之后搞定,分享一下教大家在自己服务器上配置sendmail。很多php的网站例如Discuz的论坛和各种phpCMS的网站都用到。
0 U1 C) Y3 `8 U+ G- @首先你需要先到从http://glob.com.au/sendmail/下载sendmail.zip文件,点此可以直接下载噢,然后把它解压到如D:\php\sendmail\目录下。6 H) u7 E% U7 S9 @9 i- k* s
然后打开php.ini文件,找到下面这段代码
. |( D" @0 X  J" C/ K, G2 Z0 r8 L
  1. [mail function]
    6 p+ j# V& o; M6 @" A3 h2 J6 R
  2. ; For Win32 only. - b* m5 q$ f3 `) q0 I( g
  3. SMTP = localhost 6 j/ i  T  k. _
  4. smtp_port = 25 + j" E" i1 l) }9 ?) O$ p9 F8 H
  5. ; For Win32 only.
    * z: i1 ^4 F# b0 T* u5 X1 F
  6. ;sendmail_from = me@example.com   B& H3 V# N  W
  7. ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). 2 n  U% t! B7 e0 l& h/ x" {
  8. ; sendmail_path = "" , T$ |9 y0 J, x7 r; m6 _0 L0 h
  9. ; Force the addition of the specified parameters to be passed as extra parameters
    # u/ v. k/ |4 w  Q8 p
  10. ; to the sendmail binary. These parameters will always replace the value of % F+ e5 v" Z  Q" y2 |! `& s# B
  11. ; the 5th parameter to mail(), even in safe mode. 7 ]; `6 m9 G1 r2 {/ P
  12. ;mail.force_extra_parameters =
复制代码
默认情况下是以本机做为邮件服务器,这里我们需要借用sendmail来发送邮件,用sendmail来配置如用qq、163的邮箱来发送(一般都是以这种方式)所以我们需要把所有的选项都注销,即把SMTP = localhost和smtp_port = 25前面加上";"然后把sendmai_path=""前面的";"删掉,改为sendmai_path="d:\php\sendmail\sendmail.exe -t",改完后的即是
& q* A. H" L# P8 |
  1. [mail function] # B) ?5 h" N  C' a5 d1 |4 o) J
  2. ; For Win32 only.
    / g) z" [  }' U; J1 A- t" z9 u: h
  3. ;SMTP = localhost
    ' U# R4 B  S" Z
  4. ;smtp_port = 25
    5 u/ M+ g5 [6 A  H6 ~0 N# ?/ m
  5. ; For Win32 only. ! _! ?* X% m  k  S" q& M8 \
  6. ;sendmail_from = me@example.com
    3 r( b; o: A" N- f' U
  7. ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). * B) j! l0 _# P* c
  8. sendmail_path = "d:\php\sendmail\sendmail.exe -t"
    / i& p  L+ S1 _7 M. o) i% x2 a
  9. ; Force the addition of the specified parameters to be passed as extra parameters & C7 _; \7 l4 C# G
  10. ; to the sendmail binary. These parameters will always replace the value of , {' x- b" ?. t0 x4 q3 g
  11. ; the 5th parameter to mail(), even in safe mode.
    3 i& S2 s9 \  ]3 t
  12. ;mail.force_extra_parameters =
复制代码
+ E( g: C9 F$ V1 J
注意以上只需要开启sendmail_path即可,然后保存
& w+ x0 b8 [" l! V+ Q; D8 s5 D3 V0 D4 J( p( K, g
接着修改sendmail目录下的sendmail.ini文件,主要填的内容有以下几项 ' V9 R7 Y; }9 }9 o3 `  I
  1. smtp_server=smtp服务器地址(如 smtp.ym.163.com) ( Z$ ?& e! o1 `0 r/ R
  2. auth_username=邮箱登录名(如 info@xxxx.com)
    9 m  |5 J5 n4 S+ b9 ^* C5 y( w4 Y
  3. auth_password=邮箱密码(如 xxxxxx)
    0 I1 g% [$ D; j7 O, e
  4. force_sender=发件人地址全写(如 info@xxxx.com)
复制代码
另外还有一项 6 _/ p! ^' D7 o- F6 n
  1. ; auto = use SSL for port 465, otherwise try to use TLS
复制代码
. _& c3 t& I' l9 J- I4 _
把前面的";"删除,即开启SSL安全登录选项即可
; G: h# j% t: L3 R
7 n: q  j$ n# \以上四项正确填写修改完成后保存,然后重启IIS即可正常使用。 1 @9 p7 X0 r( M/ m1 B+ \
; ^* `: E3 j( N" q8 I1 H) ]( T3 r7 _
如果不能发送邮件,检查下端口是不是被屏蔽了,杀毒软件是不是设置了禁止发送邮件等  + ?" C* G+ ~; v& l7 M
& z% w) d. F6 G2 w
回复

使用道具 举报

 楼主| 发表于 2012-9-2 10:24:28 | 显示全部楼层
http://www.phpmarker.com/1.html & c2 ]; p0 @9 b
这个是另外一种方法,但是两种方法测试过,貌似都不管用
您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

热议作品
精华帖子排行
精彩推荐

虾皮社区,成立十年了!

站长自己也搞不懂想做个什么,反正就是一直在努力的做!

Copyright © 2007-2019 xp6.org Powered by Discuz

QQ|Archiver|手机版|小黑屋|虾皮社区 鲁公网安备 37021102000261号 |网站地图
返回顶部 返回列表