我正在寻找有关如何从本地主机WAMP发送电子邮件的适当信息。以及如何获得授权,从特定授权电子邮件地址发送任何其他电子邮件地址。
如何配置整个步骤,请详细说明给我,我已经访问了一些 Stack Overflow 答案以及博客文章,但所有这些都非常混乱和过时,所以可能无法正常工作。因此,我需要 Stack Overflow 用户的帮助。谢谢。
从localhost
配置一个工作的电子邮件客户端是相当困难的,我花了几个小时的时间尝试它而感到沮丧。最后我找到了这种方法来发送邮件(使用WAMP,XAMPP等):
配置此hMailServer设置:
配置您的Gmail帐户,执行以下修改:
如果您想从另一台计算机发送电子邮件,需要按照以下步骤允许来自外部帐户的交付:
对于我而言,Fake Sendmail 可以使用。
操作步骤:
1) 编辑 C:\wamp\sendmail\sendmail.ini:
smtp_server=smtp.gmail.com
smtp_port=465
auth_username=user@gmail.com
auth_password=your_password
2) 编辑 php.ini
文件并设置 sendmail_path
sendmail_path = "C:\wamp\sendmail\sendmail.exe -t"
就这样。现在您可以测试邮件了。
a) Open the "php.ini". For XAMPP,it is located in C:\XAMPP\php\php.ini. Find out if you are using WAMP or LAMP server. Note : Make a backup of php.ini file
b) Search [mail function] in the php.ini file.
You can find like below.
[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 = postmaster@localhost
Change the localhost to the smtp server name of your ISP. No need to change the smtp_port. Leave it as 25. Change sendmail_from from postmaster@localhost to your domain email address which will be used as from address..
So for me, it will become like this.
[mail function]
; For Win32 only.
SMTP = smtp.planetghost.com
smtp_port = 25
; For Win32 only.
sendmail_from = info@planetghost.com
auth_username = example_username@example.com
auth_password = example_password
c) Restart the XAMPP or WAMP(apache server) so that changes will start working.
d) Now try to send the mail using the mail() function ,
mail("abc@gmail.com","Success","Great, Localhost Mail works");
================================================================================
另一种方式
Gmail服务器使用SSL下的SMTP身份验证。我认为在这种情况下无法使用mail()函数,因此您可能需要检查以下替代方案:
它们都支持SSL下的SMTP身份验证。
参考来源:请点击此处查看答案
以下是使用Wamp服务器和Sendmail从本地主机发送电子邮件的步骤。
smtp_server=smtp.gmail.com
smtp_port=465
auth_username=user@gmail.com
auth_password=your_password
"C:\wamp\bin\php\php5.5.12\php.ini"
和 "C:\wamp\bin\apache\apache2.4.9\bin\php.ini"
,设置 sendmail_path ** sendmail_path = "C:\wamp\sendmail\sendmail.exe -t"
它肯定会起作用。
<?php
phpinfo();
?>
这将使您了解wamp正在使用什么。 3.搜索php.ini文件。可能会有几个。您想要的是影响上面文件输出的文件。 4.在最可能的php.ini中查找smtp地址。 5.在浏览器中键入localhost/phpsetup.php,向下滚动到smtp设置。应该说“localhost”。 6.将php.ini文件smtp设置编辑为您的ISP smtp服务器的名称。 检查它是否对您的phpsetup.php进行更改。如果有效,您完成了,否则您正在处理错误的文件。
这个问题应该出现在WordPress网站上,但他们太自大或试图获取客户;)
以下是使用PHPmailer库发送电子邮件的最佳方法,这是我唯一有效的方法。
require_once 'mailer/class.phpmailer.php';
$mail = new PHPMailer(); // create a new object
$mail->IsSMTP(); // enable SMTP
$mail->SMTPDebug = 1; // debugging: 1 = errors and messages, 2 = messages only
$mail->SMTPAuth = true; // authentication enabled
$mail->SMTPSecure = 'ssl'; // secure transfer enabled REQUIRED for GMail
$mail->Host = "smtp.gmail.com";
$mail->Port = 465; // or 587
$mail->IsHTML(true);
$mail->Username = "xxxxxx@gmail.com";
$mail->Password = "xxxxxxx";
$mail->SetFrom("xxxx@xxx.com");
$mail->AddAddress($to);
$logfile = dirname(dirname(__FILE__)) . '/mail.log';
try {
$mail->Body = $message;
$mail->Subject = $subject;
file_put_contents($logfile, "Content: \n", FILE_APPEND);
file_put_contents($logfile, $message . "\n\n", FILE_APPEND);
if(!$mail->Send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Email has been sent";
}
} catch (Exception $e) {
#print_r($e->getMessage());
file_put_contents($logfile, "Error: \n", FILE_APPEND);
file_put_contents($logfile, $e->getMessage() . "\n", FILE_APPEND);
file_put_contents($logfile, $e->getTraceAsString() . "\n\n", FILE_APPEND);
}
在没有SMTP服务器发送邮件的情况下,可以使用此代码来发送邮件....
click below for mail sending code
听着,首先你可以降低 Gmail 账户的安全性,然后使用你的 Gmail 账户发送邮件。
你可以使用这个 php.ini 设置。
;smtp = smtp.gmail.com
;smtp-port = 25
;sendmail_from = my gmail is here
和sendmail.ini设置
smtp_server = smtp.gmail.com
smtp_port = 465
smtp_ssl = auto
auth_username = my gmail is here
auth_password = password
hostname = localhost
you can try this changes and i hope this code sent mail....