Проблемы SMTP с использованием IIS и PHPMailer - PullRequest
0 голосов
/ 11 февраля 2020

Так что я уже некоторое время работаю над проектом, использующим PHPMailer, и после нескольких тестов он отлично работает на моем локальном хосте. Но теперь я столкнулся с проблемой, потому что, когда я пытаюсь отправить свою форму на работающем сервере (я использую IIS на Windows 10 P C и PHP 5.6), он даже ничего не загружает и пропускает меня прямо на страницу «Сообщение отправлено», что очень странно, потому что я видел много постов, где люди говорят, что получают сообщение об ошибке, но по какой-то причине мой код PHPMailer, похоже, полностью игнорируется. PHP действительно работает на моем проекте, потому что есть страница входа в систему, так что я действительно не знаю, что делать на данный момент. Я пытался найти опцию SMTP Virtual Server на IIS, но я не могу найти его. Я попытался отключить $ mail-> IsSMTP (); и ничего не происходит

Вот мой код:

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require '/PHPMailer/Exception.php';
require '/PHPMailer/PHPMailer.php';
require '/PHPMailer/SMTP.php';

require_once __DIR__ . '/vendor/autoload.php';
    $mail = new PHPMailer(true);
try {
    //Server settings
    $mail->SMTPDebug = 1;                     
    $mail->isSMTP();                                            
    $mail->Host       = 'mail.domain.com';                    // Set the SMTP server to send through
    $mail->SMTPAuth   = true;                                   // Enable SMTP authentication
    $mail->Username   = 'email@mycompany.com';                     // SMTP username
    $mail->Password   = 'password';                               // SMTP password
    $mail->SMTPSecure = 'tls';         // Enable TLS encryption; `PHPMailer::ENCRYPTION_SMTPS` also accepted
    $mail->Port       = 587;                                    // TCP port to connect to
    $mail->SMTPOptions = array(
        'ssl' => array(
            'verify_peer' => false,
            'verify_peer_name' => false,
            'allow_self_signed' => true
        )
    );


    //Recipients    
    $mail->setFrom('email@mycompany.com', $);
    $mail->addAddress('email@mycompany.com');     // Add a recipient


    $mail->addStringAttachment('stuff');

    // Content
    $mail->isHTML(true);                                  // Set email format to HTML
    //$mail->Subject = $;
    //$mail->Body    = $;
    $mail->Subject = '';
    $mail->Body    = '';
    $mail->CharSet = 'UTF-8';

    $mail->send();

    echo '<script> alert (".");
    windows.history.go(-1);</script>';
} catch (Exception $e) {
    echo "";
}

?>

Я тоже пытался использовать этот код для тестирования, но он повторил "не в порядке".

<?php
if(mail('user@mydomain.com','test subject','test message')){
      echo('ok');
    }
else{
      echo('not ok');
    }
?>

Заранее спасибо.

...