我試圖使用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的問題。