gpt4 book ai didi

php - mail() 在新服务器上不起作用

转载 作者:可可西里 更新时间:2023-11-01 12:25:40 25 4
gpt4 key购买 nike

可能这是一个愚蠢的问题,但我找不到 php 邮件功能不起作用的原因我在 debian squeeze 上有一个 nginx 服务器,我最近搬到了它。我尝试了简单的邮件执行,但它返回 false。

if(mail('test@email.com', 'test-subject', 'test-text-blablabla'))
echo 'ok';
else
echo 'bad';

我能用它做什么?

谢谢。

我的 php.ini 邮件部分:

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = me@example.com

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
;sendmail_path =

; 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 =

; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
mail.add_x_header = On

; The path to a log file that will log all mail() calls. Log entries include
; the full path of the script, line number, To address and headers.
;mail.log =

最佳答案

好的,我做到了。我是如何使用 nginx 服务器进行 debian 压缩的:(​​我从 root 用户执行的所有命令)

首先你需要安装sendmail

apt-get install sendmail

接下来,你必须配置这个比我想象的更容易的文件

sendmailconfig 

好的,我做的下一步是一个 php.ini 配置(我不是一个很好的管理员,我是一个初学者,所以我不知道是否有必要。)

我设置

sendmail_path= /usr/sbin/sendmail -t -i

好的,从这一刻起,理论上,您可以发送电子邮件,但对于我的情况,它导致了 504 http 错误网关超时。但正如我后来发现的那样,电子邮件已经到达邮箱。所以,我的测试 php 文件是:

<?php 
mail('myWorkingEmail@example.com', 'test', 'you done that');
echo 'ok'; // I use this to check that script is end the execution
?>

这很清楚。

下一个问题是 504 错误。我去日志文件

nano /var/log/mail.log

在这里我发现了这个错误(这不是唯一的错误,而是导致 504 错误的错误):

sm-msp-queue[***]: My unqualified host name (myhostname) unknown; sleeping for retry

然后,找到解决这个问题的方法: http://forums.fedoraforum.org/archive/index.php/t-85365.html该页面上的最后评论。

或者我写的换句话说:

nano /etc/hosts

在该文件中我更改了主机的顺序

127.0.0.1 my_ip localhost myhostname 

保存,完成。打开你的测试 php 文件,没有任何 504 错误,并且电子邮件是你在邮件功能中提到的电子邮件的收入。正如我所说,我是新手,这可能对您不起作用,但无论如何对我有用。当然,这不是最终配置。希望你觉得它有帮助。

关于php - mail() 在新服务器上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14866207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com