Это мой первый раз, когда я что-то делаю с SMTP, поэтому наберитесь терпения, если я делаю что-то ужасно неправильно здесь 🙂 Обычно я просто использую PHPMailer, но в данном случае это не вариант.
Я пытаюсь отправить электронное письмо людям из списка рассылки. Я использую fsockopen, и мне нужно использовать соединение TLS для этого.
Вот что я делаю:
Здесь что-то идет не так
После использования зашифрованного соединения я не могу успешно прочитать ответ сервера. Например, при попытке прочитать ответ с помощью fgets($conn,1024)
после моей аутентификации это длится вечно, и, наконец, я получу сильно зашифрованный код, который не сможет найти ответ «235» (чтобы убедиться, что моя аутентификация прошла успешно).
И тогда, когда я напишу MAIL FROM, мой ответ будет выглядеть так:
.0.0 SMTP server ready
Хотя я думаю, что хотел бы что-то вроде этого:
250 2.0.0
Что-то не так, но я не знаю почему. Я надеюсь, что любой из вас, экспертов, сможет помочь мне разобраться с этой проблемой 🙂
Заранее спасибо!
Решено
На случай, если кто-то еще столкнется с этой проблемой.
Этот порядок работает
Между каждым звонком я добавлял следующее:
stream_set_timeout($conn, 300);
set_time_limit(310);
Внезапно я получил ожидаемые ответы от сервера, и письмо было успешно отправлено.
Решено
На случай, если кто-то еще столкнется с этой проблемой.
Этот порядок работает
Между каждым звонком я добавлял следующее:
stream_set_timeout($conn, 300);
set_time_limit(310);
Внезапно я получил ожидаемые ответы от сервера, и письмо было успешно отправлено.
— entiendoNull
Других решений пока нет …