搜索
查看: 18165|回复: 1

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

[复制链接]
发表于 2012-9-2 08:29:24 | 显示全部楼层 |阅读模式
  最近研究uchome,使用在线发邮件的功能,但是测试了"通过 PHP 函数的 sendmail 发送(推荐此方式)"怎么都没用,因为本人现在用的是iis+php环境,怎么调试都没有用,经过研究之后搞定,分享一下教大家在自己服务器上配置sendmail。很多php的网站例如Discuz的论坛和各种phpCMS的网站都用到。$ o6 v* W% v1 F  w; D0 V/ b
首先你需要先到从http://glob.com.au/sendmail/下载sendmail.zip文件,点此可以直接下载噢,然后把它解压到如D:\php\sendmail\目录下。
+ B/ a6 s( K* `7 E) [然后打开php.ini文件,找到下面这段代码
* P" v% l8 J! E7 W* F
  1. [mail function] ! I+ z: g5 t: q* I+ ?& @: l0 }
  2. ; For Win32 only.
    - K  A) B5 _6 A4 c4 v5 M0 t" b
  3. SMTP = localhost % R" g8 J5 y" i
  4. smtp_port = 25 - W3 H% k: A% Z
  5. ; For Win32 only. : n1 t) t2 ~- x$ O- i
  6. ;sendmail_from = me@example.com * ^; e8 S4 K; x" b9 O3 n! Y
  7. ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").   K+ w7 ~- i! j, e/ ]; I: r0 N
  8. ; sendmail_path = "" 6 e: G) k# @5 i5 S: d
  9. ; Force the addition of the specified parameters to be passed as extra parameters
    & h- `2 B! ^& x( ]4 V$ K! A/ ?
  10. ; to the sendmail binary. These parameters will always replace the value of
    / p$ L+ I0 D0 }
  11. ; the 5th parameter to mail(), even in safe mode. " ?  N- e+ h! }% c! C% v5 v9 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",改完后的即是 & g. E1 s9 ^# [0 T6 b# Q
  1. [mail function]
    7 C3 X4 U# t. x! K& w- Q
  2. ; For Win32 only.
    5 c& T* ^/ Z) C3 |, Q- z! ^
  3. ;SMTP = localhost
    7 X  P( l- n, \$ L. x& i
  4. ;smtp_port = 25 2 Z* k+ f  d: m& w" I. W
  5. ; For Win32 only. / S+ O3 h3 G0 o# X" ]
  6. ;sendmail_from = me@example.com
    ! i# a; H" l$ o/ e' g& P
  7. ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). 5 M/ n- {3 f7 ~1 ~2 w
  8. sendmail_path = "d:\php\sendmail\sendmail.exe -t"
    % h, [8 }- X$ C* W, C9 `* W. {
  9. ; Force the addition of the specified parameters to be passed as extra parameters
    * w9 ~: l, F, Q  z7 q( @
  10. ; to the sendmail binary. These parameters will always replace the value of
    , @+ m3 q5 e$ @( }
  11. ; the 5th parameter to mail(), even in safe mode. % g, d; X, t* t4 [/ U$ r
  12. ;mail.force_extra_parameters =
复制代码

7 {0 h  }8 N9 D4 w注意以上只需要开启sendmail_path即可,然后保存 # }: w+ l- }3 N
. D  S" H) w' v. C! d4 `
接着修改sendmail目录下的sendmail.ini文件,主要填的内容有以下几项
6 `6 k3 k7 V$ ^/ r
  1. smtp_server=smtp服务器地址(如 smtp.ym.163.com)
    9 C; s6 d1 U5 i9 ?  {" ^9 W
  2. auth_username=邮箱登录名(如 info@xxxx.com)
    , b, p$ E; f) C' n8 ?
  3. auth_password=邮箱密码(如 xxxxxx)
    * a* R5 y. t" [
  4. force_sender=发件人地址全写(如 info@xxxx.com)
复制代码
另外还有一项 , _, c0 e% v% E# \
  1. ; auto = use SSL for port 465, otherwise try to use TLS
复制代码

" x" y/ W. w% q$ R把前面的";"删除,即开启SSL安全登录选项即可 5 S/ Y( ]( ^: l3 U$ {1 I% [

9 r; {0 X7 K0 I8 Y6 {& M以上四项正确填写修改完成后保存,然后重启IIS即可正常使用。 2 K# j3 X: B, B1 F( d1 W
9 y1 c3 \- G# C- U! v, b
如果不能发送邮件,检查下端口是不是被屏蔽了,杀毒软件是不是设置了禁止发送邮件等    O8 @# g" V  c$ f6 k  O/ f- v  G
: z) J$ U/ v# N  o
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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