天道酬勤,学无止境

SMTP server local send mail php [duplicate]

Possible Duplicate:
mail(): SMTP server response: 550 The address is not valid error on hmailserver

I would like test my class senderMail.php.

For to have, a smtp server, I use hMailServer. I have created a domaine, I have created a account, and now I configure SMTP settings.

hMailServer would like a configuration "SMTP RELAYER". I test with the information: smtp.gmail.com on port 587 and I enter my identifier too.

When, I have tested this with my class senderMail.php I have this error:

SMTP server response: 550 The address is not valid

Where come my error ? It's from SMTP RELAYER or a other config ?

评论

why don't you try it to send it directly from localhost.

  1. Go to your php.ini file and change SMTP = localhost to SMTP = aspmx.l.google.com and uncomment sendmail_from and put in your sending gmail address.

  2. In php, test it with mail("youremail]@gmail.com", "subject", "body");

Note: This only works when sending email to google hosted email addresses.

OR

try above if its not work use swiftmailer its php mail sending library which also allow to send mail through SMTP its really helpful during development.

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 设置发送电子邮件的 php.ini 参数是什么? [复制](What are the php.ini parameters to set for sending email? [duplicate])
    问题 这个问题在这里已经有了答案: 使用 WAMP 发送电子邮件(6 个回答) 8 年前关闭。 我想从我的 PHP 代码发送电子邮件,但我收到了警告消息。 那么要设置的 php.ini 参数是什么? 回答1 要检查/更改您的 PHP 邮件配置: 打开您的 php.ini 文件(如果您不知道它在哪里,请参见下文) 搜索显示为 [mail function] 添加/更改邮件服务器详细信息的行。 这可能是本地邮件服务器或 ISP 的邮件服务器。 保存/关闭 php.ini 文件重新启动您的 Web 服务器 首次打开 php.ini 文件时邮件设置的示例: [mail function] ; For Win32 only. SMTP = localhost smtp_port = 25 ; For Win32 only. ;sendmail_from = me@example.com ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). ;sendmail_path = 附加信息在 echo phpinfo()您可以查看您的 PHP 配置详细信息。 您可以通过创建一个包含以下行的 .php 文件来完成此操作: <?php phpinfo(); ?> <?php phpinfo(); ?>
  • PHPMailer无法发送电子邮件(PHPMailer cannot send email)
    问题 我的项目包含一个发送电子邮件的功能,即PHPMailer 。 它可以很好地从我的本地主机服务器发送电子邮件,但是今天停止发送电子邮件,现在显示此错误消息 SMTP Error: Could not connect to SMTP host. 我添加了这段代码$mail->SMTPDebug = 1; 查看调试错误,现在向我显示此消息: SMTP ERROR: Failed to connect to server: php_network_getaddresses: getaddrinfo failed: The requested name is valid, but no data of the requested type was found. (0) SMTP Error: Could not connect to SMTP host 我已经在php.ini enabled extension=php_openssl.dll 。 这是我的代码: $mail = new PHPMailer(); $mail->SMTPSecure = 'ssl'; $mail->IsSMTP(); $mail->Username = "myemail@gmail.com"; // your GMail user name $mail->Password = "password";
  • 如何从本地WAMP服务器发送电子邮件以向Gmail Hotmail等发送电子邮件? [复制](How to send email from localhost WAMP Server to send email Gmail Hotmail or so forth? [duplicate])
    问题 这个问题已经在这里有了答案: (WAMP / XAMP)使用SMTP本地主机发送邮件[关闭] (6个答案) 2年前关闭。 我正在寻找有关如何从localhost WAMP发送电子邮件的适当信息。 以及如何获得从特定的授权电子邮件地址发送电子邮件的授权以发送任何其他电子邮件地址。 如何配置这整个步骤向我解释了细节,我已经在这里访问了一些Stack Overflow答案以及博客文章,但是所有内容都很混乱且过时,因此可能无法正常工作。 因此,我需要Stack Overflow用户帮助。 谢谢你。 回答1 从localhost配置一个工作的电子邮件客户端是一件很麻烦的事情,我花了数小时的挫败尝试。 最后,我发现了这种发送邮件的方式(使用WAMP,XAMPP等): 安装hMailServer 配置此hMailServer设置: 打开hMailServer Administrator。 单击“添加域...”按钮以创建一个新域。 在“域”文本字段下,输入计算机的本地主机IP。 示例:127.0.0.1是您的本地主机IP。 点击“保存”按钮。 现在转到“设置”>“协议”>“ SMTP”,然后选择“电子邮件的传递”选项卡。 找到本地主机字段,输入“本地主机”。 单击保存按钮。 配置您的Gmail帐户,执行以下修改: 转到设置>协议> SMTP,然后选择“电子邮件的传递”标签。 在“远程主机名
  • phpmailer发送gmail smtp超时[重复](phpmailer send gmail smtp timeout [duplicate])
    问题 这个问题已经在这里有了答案: 8年前关闭。 可能重复: 使用PHPMailer遇到麻烦 有很多类似的问题,但是没有一个对我有帮助。 这是phpmailer示例中提供的我的脚本: require_once('../class.phpmailer.php'); //include("class.smtp.php"); // optional, gets called from within class.phpmailer.php if not already loaded $mail = new PHPMailer(true); // the true param means it will throw exceptions on errors, which we need to catch $mail->IsSMTP(); // telling the class to use SMTP try { $mail->SMTPDebug = 2; // enables SMTP debug information (for testing) $mail->SMTPAuth = true; // enable SMTP authentication $mail->SMTPSecure = "ssl"; // sets the prefix to the servier $mail-
  • phpmailer send gmail smtp timeout [duplicate]
    This question already has answers here: Closed 8 years ago. Possible Duplicate: Having trouble with PHPMailer There are lots of similar questions , but none of them helped me. Here's my script which is provided in the phpmailer exmaples: require_once('../class.phpmailer.php'); //include("class.smtp.php"); // optional, gets called from within class.phpmailer.php if not already loaded $mail = new PHPMailer(true); // the true param means it will throw exceptions on errors, which we need to catch $mail->IsSMTP(); // telling the class to use SMTP try { $mail->SMTPDebug = 2; // enables SMTP debug
  • 如何配置XAMPP从本地主机发送邮件?(How to configure XAMPP to send mail from localhost?)
    问题 我正在尝试从本地主机发送邮件。 但是我无法从本地主机发送邮件,所以任何人都可以告诉我如何重新配置​​我的xampp以从本地主机发送邮件 回答1 您可以使用sendmail软件包从localhost发送邮件,sendmail软件包在XAMPP中是内置的。 因此,如果您使用的是XAMPP,则可以轻松地从本地主机发送邮件。 例如,您可以将C:\xampp\php\php.ini和c:\xampp\sendmail\sendmail.ini为gmail以发送邮件。 在C:\xampp\php\php.ini找到extension=php_openssl.dll并从该行的开头删除分号,以使SSL适用于localhost的gmail。 在php.ini文件中找到[mail function]并进行更改 SMTP=smtp.gmail.com smtp_port=587 sendmail_from = my-gmail-id@gmail.com sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t" 现在,打开C:\xampp\sendmail\sendmail.ini 。 用以下代码替换sendmail.ini中的所有现有代码 [sendmail] smtp_server=smtp.gmail.com smtp_port=587
  • PHPmailer duplicate email issue - conditional statement with $mail->Send()
    I came across a bizarre issue with PHPmailer (version 5.1) that I'm trying to work around. I've seen quite a bit of good feedback on here, so I thought I would give it a try. I've found that when I attempt to create a customized confirmation message with a conditional statement based on $mail->send(), I receive duplicate emails. I can duplicate it with the generic testemail.php script that comes with the phpmailer download. Here's the code: require '../class.phpmailer.php'; try { $mail = new PHPMailer(true); //New instance, with exceptions enabled $mail->SMTPDebug = 1; $mail->IsSMTP(); // tell
  • 从本地 apache 服务器发送邮件(Send mail from a local apache server)
    问题 我想从我的 PHP Web 应用程序发送电子邮件。 我知道这是可能的,因为几个月前,我的系统上有这个“功能”,然后我开始使用 xampp 并且该功能消失了。 我想,当我回到我的本地服务器并像以前一样使用本地 MySQL 数据库和其他东西时,我可以再次从我的网络应用程序发送电子邮件。 我将操作系统从 Mountain Lion 更新到 Mavericks(不知道这是否可能是主要问题)并返回到本地 apache 服务器,同时删除了 xampp。 但我仍然无法从我的网络应用程序发送电子邮件。 我更改了正在使用的 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
  • PHP从本地主机发送邮件(php send mail from localhost)
    问题 我是php新手。 我试图使用此代码从php发送邮件。 <?php $to = 'sohil@gmail.com'; $subject = 'The subject'; $message = 'hello'; $headers = 'From: sohil@yahoo.in' . "\r\n" . 'Reply-To: receiver@yahoo.in' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers); ?> 我在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 = sohil@gmail.com 及在sendmail.ini中 # A freemail service example account Gmail tls on tls_certcheck off host smtp.gmail.com from sohil
  • phpmailer在Gmail上使用smtp无法正常工作-连接超时(Phpmailer using smtp with Gmail not working - connection timing out)
    问题 我研究了以下链接: phpmailer发送gmail smtp超时 通过PHP Mailer使用Gmail SMTP服务器发送电子邮件 http://uly.me/phpmailer-and-gmail-smtp/ ...并尝试自己实现这些功能的组合...大多数情况下,它会发送此消息... 无法发送信息。 邮件错误:SMTP connect()失败。 但是,当我在“ tls”和“ ssl”之间进行实验时,曾有一次它发送此消息。 SMTP错误:无法连接到服务器:连接超时(110)SMTP connect()失败。 无法发送信息。 邮件错误:SMTP connect()失败。 我的代码已附加...我是否以某种方式错过了某些东西? 我询问了网络托管服务是否被阻止,并给了他们我的代码模板-他们说服务器允许连接到Gmail的SMTP。 require_once("class.phpmailer.php"); $mail = new PHPMailer(); $mail -> IsSMTP(); $mail -> SMTPDebug = 2; $mail -> SMTPAuth = 'true'; $mail -> SMTPSecure = 'tls'; $mail -> SMTPKeepAlive = true; $mail -> Host = 'smtp.gmail.com';
  • PHP:在本地主机中发送邮件(PHP : send mail in localhost)
    问题 我想通过本地托管的php代码发送电子邮件。 <?php $email = "myemail@local.com"; $titre = "My subject"; $message = "Text message !"; mail($email, $titre, $message); ?> 运行此代码时,出现以下错误: Warning: mail() [<a href='function.mail'>function.mail</a>]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\... 我进入了php.ini文件,它似乎已经配置正确。 [mail function] ; For Win32 only. ; http://php.net/smtp SMTP = localhost ; http://php.net/smtp-port smtp_port = 25 我怎样才能解决这个问题 ? 谢谢 回答1 它配置为将localhost:25用于邮件服务器。 错误消息表明它无法连接到localhost:25 。 因此,您有两个选择: 在本地主机端口25上安装
  • MAMP上的php邮件(php mail on MAMP)
    问题 我需要使用PHP的邮件测试一些脚本。 我希望最终可以在本地工作。 我正在使用MAMP。 有没有安装任何第三方软件的方法? 我已经对此进行了一些搜索,但没有发现任何吸引人的东西。 谢谢 回答1 您是专门尝试测试邮件的发送,还是要测试其余的代码? 对于前者,您需要配置: SMTP = smtp.example.com smtp_port = 25 sendmail_from = me@example.com 在您的php.ini文件中(用phpinfo()检查它在哪里),并替换为适当的值。 要测试除发送邮件过程以外的代码,我建议创建2个包含文件: <?php // for live usage/mail send testing function ori_mail() { return call_user_func_array('mail',func_get_args()); } 并测试其他代码function ori_mail() { file_put_contents('debug_mail_scripts.txt' ,date('r') . ':' . var_export(func_get_args(), true) , FILE_APPEND); } 并包括与您的测试有关的内容。 请注意,测试与SMTP服务器的集成以及测试代码的交付能力相当复杂
  • 为什么mail()PHP函数不适用于WAMP默认安装?(Why mail() PHP function does not work with WAMP default installation?)
    问题 我有WAMP Server 2.0的默认安装。 我正在尝试使用以下简单脚本发送电子邮件: <?php if (mail('my_email@gmail.com', 'My Title', 'Some Text')) { echo "OK"; } else { echo "Why ??"; } ?> 不幸的是,我收到以下警告: 警告:mail()[function.mail]:无法通过“ localhost”端口25连接到邮件服务器,无法验证php.ini中的“ SMTP”和“ smtp_port”设置,或在C:\ My_Path \ send_email中使用ini_set()。第3行的php为什么?? 可能是什么原因呢? 我希望发送电子邮件是一个非常简单的任务... :( 回答1 为了能够发送电子邮件,您需要一个外发电子邮件服务器(MTA)。 在大多数Linux系统中,默认情况下存在一个,PHP将通过将邮件提交到sendmail来使用它,这是一个Linux应用程序/别名,用于将邮件提交给您已安装的任何MTA。 Windows默认不包含MTA。 在Windows中,要能够从PHP发送邮件,您需要有权访问某些传出电子邮件服务器,并告知PHP地址和端口。 这是使用SMTP和smtp_port设置在php.ini中完成的。 它将默认为端口25上的localhost 。
  • 如何在PHPMailer中指定SMTP服务器?(How to specify the SMTP server in PHPMailer?)
    问题 我想知道如何获取SMTP服务器以使用PHPMailer来将自动电子邮件与创建的电子邮件(email@mydomain.com)一起发送。 我的虚拟主机没有提供一个。 我将域名OnlyDomains而我的虚拟主机是000Webhost。 <?php require './PHPMailer-master/PHPMailerAutoload.php'; $mail = new PHPMailer; $mail->isSMTP(); // Set mailer to use SMTP $mail->Host = ''; // Specify main and backup SMTP servers $mail->SMTPAuth = true; // Enable SMTP authentication $mail->Username = 'noreply@mydomain.com'; // SMTP username $mail->Password = '********'; // SMTP password $mail->SMTPSecure = 'tls'; $mail->From = 'noreply@mydomain.com'; $mail->FromName = 'Admin'; $mail->addAddress('sdfsdf@hotmail.com'); //
  • 使用PHPMailer遇到麻烦(Having trouble with PHPMailer)
    问题 我正在尝试使用PHPMailer发送Gmail电子邮件。 我关注了这篇文章 为此,我设置了如下所示的功能: function sendEmail($email, $name) { $mail = new PHPMailer(); $mail->IsSMTP(); // send via SMTP //IsSMTP(); // send via SMTP I commented it cos it gives an error $mail->SMTPAuth = true; // turn on SMTP authentication $mail->Username = 'email@gmail.com'; // Changed my email $mail->Password = "password";// Changed my password $mail->From = 'email@gmail.com'; $mail->FromName = 'FROM NAME'; $mail->AddAddress($email); $mail->IsHTML(true); // send as HTML $mail->Subject = "Subject"; $mail->Body = "Body"; if (!$mail->Send()) { return false; }
  • mail():SMTP服务器响应:550地址在hmailserver上无效错误(mail(): SMTP server response: 550 The address is not valid error on hmailserver)
    问题 尽管将php.ini配置为有效的send_from地址,但仍收到此错误。 我知道它是有效的,因为当我从松鼠邮件中发送邮件时它可以工作,但是在php中发送邮件时它就行不通了。 无效地址大概是指send_from地址。 所以我看不出它怎么会认为这是错误的。 这是PHP代码: $email="tobiasvogel1@googlemail.com"; $subject = "Your New Password"; $from="admin@dayshare.local"; $message = "Your new password is as follows: xxxxxxxxxxxxxxxxxxxxxxxxxxx This email was automatically generated."; if(!mail($email, $subject,$message,$from)){ echo ("error"); }else echo "success"; 并在php.ini中: SMTP = localhost sendmail_from = admin@dayshare.local 回答1 550不允许送货到该地址此错误意味着发件人正尝试将电子邮件发送到不允许其发送到的地址。 hMailServer检查IP范围设置后,将生成此消息。 例如
  • 如何配置PHP发送电子邮件?(How to configure PHP to send e-mail?)
    问题 我需要使用php脚本将邮件发送给我的网站的用户。 我试过在php中使用邮件功能。 我的代码如下: $to = "myweb@gmail.com"; $subject = "Test mail"; $message = "My message"; $from = "webp@gmail.com"; $headers = "From:" . $from; mail($to,$subject,$message,$headers); 当我尝试运行程序时,这就是我得到的: Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set(). 请告诉我$ from变量中要包含的地址。 我需要一个SMTP服务器吗? 如何使用本地主机发送邮件? 请告诉我在php.ini文件中到底要编辑什么 我是这一切的新手..请帮助我.. 回答1 改用PHPMailer:https://github.com/PHPMailer/PHPMailer 如何使用它: require('./PHPMailer/class.phpmailer.php'); $mail=new PHPMailer()
  • 如何使用 PHP 在 Lotus Notes 中发送电子邮件(How to send email in lotus notes using PHP)
    问题 需要通过 Lotus Notes 使用 PHP 发送电子邮件。 Notes 是在我的系统上配置的。 所以只是想我是否可以使用 PHP 发送电子邮件。 任何人都可以帮助我完成我应该做的代码和配置吗? 在阅读了你们所有人的回复后,我试图从我的角度确定事情。 在你的帮助下,我至少可以向前迈出一步。 我可以使用 GetEnvironmentString 找出我的邮件服务器,它该死的正确,这也反映在我的 lotus notes 工作空间中。 但是当我尝试使用以下代码时,它只会继续加载并最终不返回任何内容- <?php require_once "Mail.php"; $from = "abc@email.com"; $to = "abc@email.com"; $subject = "Test!"; $body = "Hi,\n\nTest?"; $host = "d23abcd"; $port = "1352"; $username = "abc@email.com"; $password = "mypassword"; $headers = array ('From' => $from, 'To' => $to, 'Subject' => $subject); $smtp = Mail::factory('smtp', array ('host' => $host, 'port'
  • Send mail from a local apache server
    I want to send emails from my PHP web app. I know that it is possible because a couple of months ago, I had this "feature" on my system, then I started to use xampp and the feature disappeared. I thought that when I come back to my local server and will use a local MySQL database and stuff like I used to before, I could send emails from my web apps again. I updated my operating system from Mountain Lion to Mavericks (no idea whether this could be the main issue) and went back to local apache server also removing xampp. But I still can't send emails from my web app. I changed the php.ini file
  • 从本地服务器xampp / sendmail发送电子邮件(Sending email from localhost server xampp/sendmail)
    问题 我已经建立了一个将在本地托管的PHP网站。 一种功能是发送包含购物车中物品的电子邮件。 在线托管(用于测试)时,email()函数可以完美地发送电子邮件。 我现在正在将该站点转移到本地计算机,并且无法发送电子邮件。 最初,这些电子邮件来自servername@hostname.co.uk,虽然我很乐意设置一个gmail或类似的名称来处理发送,但效果很好。 我已经阅读了一些有关设置的教程,并且首先尝试使用sendmail和gmail地址。 我想知道是否在设置ini文件时错过了一些简单的事情。 我编辑了php.ini文件,如下所示: [mail function] XAMPP: Comment out this if you want to work with an SMTP Server like Mercury SMTP = smtp.gmail.com smtp_port = 587 For Win32 only. http://php.net/sendmail-from sendmail_from = shipimageemail@gmail.com ; XAMPP IMPORTANT NOTE (1): If XAMPP is installed in a base directory with spaces (e.g. c:\program filesC:\xampp