搜索
查看: 18422|回复: 1

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

[复制链接]
发表于 2012-9-2 08:29:24 | 显示全部楼层 |阅读模式
  最近研究uchome,使用在线发邮件的功能,但是测试了"通过 PHP 函数的 sendmail 发送(推荐此方式)"怎么都没用,因为本人现在用的是iis+php环境,怎么调试都没有用,经过研究之后搞定,分享一下教大家在自己服务器上配置sendmail。很多php的网站例如Discuz的论坛和各种phpCMS的网站都用到。
3 [* W, T1 f/ Q3 F' {! q% G/ W& k( r首先你需要先到从http://glob.com.au/sendmail/下载sendmail.zip文件,点此可以直接下载噢,然后把它解压到如D:\php\sendmail\目录下。0 N3 J. F1 U( g
然后打开php.ini文件,找到下面这段代码7 `7 B3 x: g0 A2 s2 V) Q
  1. [mail function] & `2 ]0 i: H# _8 O/ g$ i# z. ?! r
  2. ; For Win32 only. & T. y' R+ y2 ^. O; D2 Y! S
  3. SMTP = localhost ' ?+ d8 K# C! q, U' ~" t+ f- ?6 V4 U' B
  4. smtp_port = 25
    % }% R7 t8 @0 L
  5. ; For Win32 only. 8 ~$ E5 k$ f: o" E" D7 R- R6 Y
  6. ;sendmail_from = me@example.com " m) R; B  p9 |( |7 I+ O
  7. ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). 1 J. w8 ?! N7 J) N' E
  8. ; sendmail_path = "" 1 I2 X/ O, n0 Z# k; ]( h8 w' E
  9. ; Force the addition of the specified parameters to be passed as extra parameters   ]  p% o8 W4 A! e  S
  10. ; to the sendmail binary. These parameters will always replace the value of
    6 w. b4 \- G4 y. @, a5 D
  11. ; the 5th parameter to mail(), even in safe mode.
    / s  r3 C6 x, `7 d4 ?' y
  12. ;mail.force_extra_parameters =
复制代码
默认情况下是以本机做为邮件服务器,这里我们需要借用sendmail来发送邮件,用sendmail来配置如用qq、163的邮箱来发送(一般都是以这种方式)所以我们需要把所有的选项都注销,即把SMTP = localhost和smtp_port = 25前面加上";"然后把sendmai_path=""前面的";"删掉,改为sendmai_path="d:\php\sendmail\sendmail.exe -t",改完后的即是
, U2 E3 o1 ^0 e2 e
  1. [mail function] 8 t3 ?5 a7 t* ^2 x+ h  D& @
  2. ; For Win32 only. / P$ k9 V" n- @  q9 ^6 l2 t
  3. ;SMTP = localhost ; s, `* [7 x* {4 E  R: D
  4. ;smtp_port = 25 2 W& [  V) L& R  b
  5. ; For Win32 only. ) _& A; e' D8 |' J
  6. ;sendmail_from = me@example.com ! x) W) H% i# j
  7. ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
    + B! o: y8 y5 g: x
  8. sendmail_path = "d:\php\sendmail\sendmail.exe -t"
    : }1 O. U2 o7 Y6 U9 e* e. Y. p; Y; B
  9. ; Force the addition of the specified parameters to be passed as extra parameters
    ( B% k1 d2 M, x2 D( R
  10. ; to the sendmail binary. These parameters will always replace the value of 2 J4 u  d. [/ q  \5 ^3 E8 ?
  11. ; the 5th parameter to mail(), even in safe mode.
    & X) D3 b& a0 Q+ E
  12. ;mail.force_extra_parameters =
复制代码
2 u8 G- i9 K6 Z5 B5 J2 H8 i
注意以上只需要开启sendmail_path即可,然后保存 : Z4 b; H1 T) r$ F( k" e

, F9 E2 v$ l$ G; n6 Z5 v接着修改sendmail目录下的sendmail.ini文件,主要填的内容有以下几项 ! a' k8 s) ~2 u2 I2 J* C  D/ M
  1. smtp_server=smtp服务器地址(如 smtp.ym.163.com) 2 ~: g2 l8 r- J  m
  2. auth_username=邮箱登录名(如 info@xxxx.com)
    & A' o* [+ x0 x! `( a4 p7 c' K
  3. auth_password=邮箱密码(如 xxxxxx) 3 Y8 L, h3 `9 f) G4 x
  4. force_sender=发件人地址全写(如 info@xxxx.com)
复制代码
另外还有一项
; W! U' c6 e, d3 t1 M
  1. ; auto = use SSL for port 465, otherwise try to use TLS
复制代码
6 j8 j0 G6 U( U2 s. C$ V6 E
把前面的";"删除,即开启SSL安全登录选项即可 6 o) X) C! S9 o* d
+ m5 r+ Y$ W, F1 k$ v* {2 A: `
以上四项正确填写修改完成后保存,然后重启IIS即可正常使用。
- l( x: \1 q1 n3 a# L, y
. _$ r" A; E+ i3 h8 g/ H8 S! @如果不能发送邮件,检查下端口是不是被屏蔽了,杀毒软件是不是设置了禁止发送邮件等  
. a) w0 S& F, S4 R6 {0 K- [. R6 {1 j7 }2 P2 \# J* R( W
回复

使用道具 举报

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

本版积分规则

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

虾皮社区,成立十年了!

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

Copyright © 2007-2019 xp6.org Powered by Discuz

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