Всем привет. Столкнулся с проблемой отправки на email из php. Сделал Web-страницу с формойа на которой пользователь вводит к примеру: имя email сообщение и нажимает кнопку Отправить. Данные передаются в php-файл. И они туда приходят. Проверял. А дальше нужно эти данные отправить на нужный мне адрес. Скачал sendmail. Настроил параметры в php.ini SMTP = smtp.gmail.com smtp_port = 465 sendmail_from = user@gmail.com где вместо user указал свой реальный логин sendmail_path = "\"C:\web\php\sendmail\sendmail.exe\" -t" больше в php.ini ничего не трогал на тему почты. Единственно что, extension=openssl раскоментировал, когда не получалось отправить почту. Но это не помогло никак. в sendmail.ini smtp_server=smtp.gmail.com smtp_port=465 smtp_ssl=auto error_logfile=error.log debug_logfile=debug.log auth_username=user@gmail.com auth_password=!******* from user@gmail.com auth on force_sender=shivara551@gmail.com hostname=gmail.com вместо user и звездочек указал реальные свои данные в итоге при отправке через функцию mail() ошибки не выдается и получаю в результате выполнения функции mail - true, однако в error.log sendmail-a и других log-файлах сообщается либо Error connecting with SSL. Пробовал через phpmailer, но тоже результата не добился. Пробовал как с со своего домашнего компа с localhost-a, где настроен apache + php7, а так же с хостинга (что использую в статусе тестового периода). В настройках отправки для sendmail.ini и php.ini пробовал указывать настройки серверов yandex.ru и gmail.com по отдельности. Нашел информацию несколько лет назад на почтовых серверах стали использовать ssl и тот же mail() из php с ним не дружит. C Phpmailer успехов у меня так же нет. Там даже никаких Log-файлов нет. Не увидел во всяком случае. Как решить эту проблему? Так же хотелось бы так же просветиться: В былые времена, когда инет был медленным и для получения почты в основном использовались Outlook Express, The Bat и подобные..я помню указывал так же smtp pop3 порты логин пароль почтового аккаунта. Могу ли я с дома без доп. софта типа почтового сервера отправлять с localhost-a своего компа сообщение на нужный мне Email из php используя только Apache+ php+настройки сервера где у меня есть почта(например yandex.ru или gmail.com)?
изменил в sendmail smtp_ssl с auto на tls smtp_ssl=tls получаю в итоге в log-файлах Closed Gracefully но письма не приходят все равно.
Получилось через phpmailer с localhost отправлять почту. Но теперь другой вопрос. Когда я выкладываю папку на хостинг, там это не работает. Выдает: Message could not be sent.Mailer Error: SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting Смотрел причину на https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting мол не включена openssl расширение через phpinfo() посмотрел на хостинге настройки php. OpenSSL support enabled OpenSSL Library Version OpenSSL 1.1.1a-freebsd 20 Nov 2018 OpenSSL Header Version OpenSSL 1.1.1a-freebsd 20 Nov 2018 Openssl default config /etc/ssl/openssl.cnf
Хостеры иногда закрывают выходы по SMTP на внешние сервера. Иногда разрешают это только по определённому порту. Так что напиши в поддержку, спроси, разрешено ли слать запросы на внешние SMTP и если да, то по какому порту