我无法接收从我的服务器发送的电子邮件

时间:2012-09-27 10:25:53

标签: php windows apache email sendmail.exe

我在Windows上使用apache,php和sendmail.exe。 我下载sendmail.exe并将其配置如下:

        ; configuration for fake sendmail

    ; if this file doesn't exist, sendmail.exe will look for the settings in
    ; the registry, under HKLM\Software\Sendmail

    [sendmail]

    ; you must change mail.mydomain.com to your smtp server,
    ; or to IIS's "pickup" directory.  (generally C:\Inetpub\mailroot\Pickup)
    ; emails delivered via IIS's pickup directory cause sendmail to
    ; run quicker, but you won't get error messages back to the calling
    ; application.

    smtp_server=smtp.gmail.com

    ; smtp port (normally 25)

    smtp_port=587

    ; the default domain for this server will be read from the registry
    ; this will be appended to email addresses when one isn't provided
    ; if you want to override the value in the registry, uncomment and modify

    default_domain=domain.com

    ; log smtp errors to error.log (defaults to same directory as sendmail.exe)
    ; uncomment to enable logging

    error_logfile=error.log

    ; create debug log as debug.log (defaults to same directory as sendmail.exe)
    ; uncomment to enable debugging

    ;debug_logfile=debug.log

    ; if your smtp server requires authentication, modify the following two lines

    auth_username=admin@whilgeek.com
    auth_password=19910610

    ; if your smtp server uses pop3 before smtp authentication, modify the 
    ; following three lines

    pop3_server=
    pop3_username=
    pop3_password=

    ; to force the sender to always be the following email address, uncomment and
    ; populate with a valid email address.  this will only affect the "MAIL FROM"
    ; command, it won't modify the "From: " header of the message content

    force_sender=webmaster@domain.com

    ; sendmail will use your hostname and your default_domain in the ehlo/helo
    ; smtp greeting.  you can manually set the ehlo/helo name if required

    ;hostname=

我的php.ini中的电子邮件功能是这样的:

[mail function]
    ; For Win32 only.
    SMTP = localhost
    smtp_port = 25

    ; For Win32 only.
    sendmail_from = admin@whilgeek.com

    ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
    sendmail_path =C:\usr\lib\sendmail.exe -t

    ; Force the addition of the specified parameters to be passed as extra parameters
    ; to the sendmail binary. These parameters will always replace the value of
    ; the 5th parameter to mail(), even in safe mode.
    ;mail.force_extra_parameters =

我在计算机中使用userCake1.4(download form here),并说成功发送了电子邮件。但我没有收到发送给我的gamil的电子邮件。

有什么不对?

1 个答案:

答案 0 :(得分:0)

我认为你的问题是反向DNS查询。当您从服务器发送电子邮件时,您的服务器必须连接到Internet,反向DNS查找必须指向您的服务器。

例如,mail.example.com的地址(A)记录指向IP地址192.0.2.5。在反向数据库的指针记录中,此IP地址存储为域名5.2.0.192.in-addr.arpa,指向其指定的主机名mail.example.com。

请参阅http://en.wikipedia.org/wiki/Reverse_DNS_lookup