【问题标题】:phpmailer works on localhost but not on live serverphpmailer 适用于本地主机,但不适用于实时服务器
【发布时间】:2017-11-26 22:05:14
【问题描述】:

我使用 ajax 和 phpmailer 提交表单。

在本地主机上一切正常。我收到响应(来自 php 文件的回显)并收到邮件。

在现场,我没有收到邮件,作为响应,我得到了整个 php 文件。

我使用亚马逊服务器。

我的想法是这与服务器有关,但我不知道从哪里开始。

这里是ajax函数

$.ajax({
            url: 'mail/contact_me.php',
            type: 'POST',
            dataType:'text',
            data: {data: JSON.stringify(getData())},
            success:function(response){
                $('#success').text(response);
            }

        });

和 php 文件

 <?php
require 'PHPMailer/PHPMailerAutoload.php';

$mail = new PHPMailer;

$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = 'myemail@gmail.com';
$mail->Password = 'mypassword';
$mail->SMTPSecure = 'ssl';
$mail->Port = 465;

$mail->setFrom('myemail@gmail.com','name');
$mail->addAddress('myemail@gmail.com');
$mail->addReplyTo('someemail@gmail.com');
$mail->isHTML(true);

$mail->Subject = 'My Subject';
$mail->Body = $message;

if (!$mail->send()) {
    echo 'Error';
} else {
    echo ' Thank you for contact us';
}

}

【问题讨论】:

  • 一模一样,检查this
  • 服务器是否支持PHP mail()函数?
  • 你得到了php文件的来源?你使用的服务器可以运行php文件吗?
  • 检查 PHP-fpm 是否在您的服务器上运行。

标签: php ajax amazon-ec2 server


【解决方案1】:

我认为 php 无法正常工作。您是否正确配置了 Web 服务器?确保在您的 Web 服务器中安装并启用了 php。如果您使用的是 Apache,请检查已安装的 mod_php。在 Nginx 中,检查php5-fpm

【讨论】:

  • 我会检查的。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-11
  • 2013-11-05
  • 2023-03-04
  • 1970-01-01
  • 2018-05-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多