2014-05-14 66 views
4

我試圖使用Zoho的SMTP服務器從MyBB安裝發送註冊郵件。但是,電子郵件從不發送,當我檢查日誌時,我注意到錯誤是。PHP - 553中繼不允許使用Zoho郵件和MyBB

Month Day Year:Hour:Minute host=smtp.zoho.com tls=on auth=on user=user[at]mydomain.com from=user[at]mydomain.com recipients=some.user[at]gmail.com smtpstatus=553 smtpmsg='553 Relaying disallowed' errormsg='the server did not accept the mail' exitcode=EX_UNAVAILABLE 

某些部分被掩蓋隱藏的私人信息!

這是sendmail的路徑在php.ini中設定

sendmail_path = "/usr/bin/msmtp -C /etc/msmtp/myserver --logfile /var/log/msmtp/myserver.log -a default -t" 

某些部分被掩蓋隱藏的私人信息!

這是MSMTP的myserver配置

# Define here some setting that can be useful for every account 
defaults 
    logfile /var/log/msmtp/general.log 

# Settings for default account 
account default 
    protocol smtp 
    host smtp.zoho.com 
    tls on 
    tls_starttls off 
    tls_certcheck off 
    port 465 
    auth plain 
    user user[at]mydomain.com 
    password ********** 
    from user[at]mydomain.com 
    logfile /var/log/msmtp/myserver.log 

# If you don't use any "-a" parameter in your command line, 
# the default account "default" will be used. 
# account default: default # (disabled because this gives a "redefined" error) 

10)某些部件被隱藏以隱藏私人信息!

問題是,我知道它的工作,並沒有端口被阻止,因爲當我在命令行中使用相同的命令。該電子郵件已成功發送並收到。

sudo echo -e "Subject: Test Mail\r\n\r\nThis is a test mail" | msmtp --debug -a default --from=user[at]mydomain.com -t some.user[at]gmail.com --file=/etc/msmtp/myserver 

某些部分被掩蓋隱藏的私人信息!

這意味着它要麼有毛病方式的MyBB發送電子郵件,或這件事情錯了我的PHP配置或命令行,我已在php.ini文件中設置。

我已經搜索了這一整天,但是我得到的每一個結果要麼與PHP無關,要麼從未開始工作。而我正在從命令行工作,但不是從PHP工作。

我在服務器上使用UFW,每個端口都完全打開,所以我猜測它與被阻塞的端口無關。

它與Gmail一起工作,但每封電子郵件都發送到垃圾郵件文件夾,並且每次使用每封電子郵件時都無法使用。

編輯: 我試着用PHP5-CLI發送郵件,它工作。所以我猜測這是PHP5-FPM或MyBB的問題。

回答

0

如果沒有MyBB安裝,我無法測試它,但如果它使用本地PHP郵件函數,則可能需要將-f選項添加到mail()函數調用中,因爲您使用的是sendmail。是第5個參數(我曾經以爲是第4次就浪費了一天)

mail('[email protected]', 'the subject', 'the message', null, 
'[email protected]'); 
相關問題