我有一个疑问php中 mail()函数,貌似不用提供用户密码,不用经过smtp服务器验证就能发送邮件,为什么啊?求教

解决方案 »

  1.   

    是在 php.ini中设置了[mail function]
    ; For Win32 only.
    SMTP = localhost; For Win32 only.
    sendmail_from = you@yourdomain; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
    ;sendmail_path =
      

  2.   

    但是我并没有对php.ini进行过设置,里面所有的参数都是默认?
    难道是php.ini中默认就设置了一个smtp服务器?
    还有不要用户密码就能发送邮件,到底是什么原理?
      

  3.   

    如果你使用的是 linux 操作系统,那么是这样的
    是通过实用程序 sendmail -t -i 发送的如果你使用 windows 系统,那么必须进行设置,必要时还需安装 smtp 服务
      

  4.   

    除了php配置外,mial发送跟使用的邮箱也有关系。
      

  5.   

    linux一般都装了sendmail, (当然也可以是其它mail service,但是不多)
    就是说你的linux就是smtp服务器,smtp发信是不用非要提供用户/密码的,当然也可以配置成必须,
    这也是垃圾邮件的一个起因,但是因为smtp的装机量大,(你看大部分unix/linux都是)
    所以也不容易改变