PHP Sendmail не удалось в Windows XAMPP

Я пытаюсь отправить почту в Windows через мою учетную запись Gmail, я настроил свой php.ini:

SMTP=smtp.gmail.com
smtp_port=587
[email protected]
sendmail_path="\"C:\xampp\sendmail\sendmail.exe\" -t"
and sendmail.ini :
smtp_server=smtp.gmail.com
smtp_port=587
smtp_ssl=auto
error_logfile=error.log
[email protected]
auth_password=my-password-confident
[email protected]

вот мой код:

<?php
// The message
$message = "Line 1\r\nLine 2\r\nLine 3";

// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70, "\r\n");

// Send
$send = mail('[email protected]', 'My Subject', $message);
if ($send) {
echo "send";
}
else {
echo "fail";}
?>

также я изменил свою безопасность Google, потому что стал менее безопасным
Я понятия не имею, почему, кто-нибудь, помогите мне?

1

Решение

Я не уверен, что вы используете Windows 8, но если вы делаете, вы должны сделать следующее —

1) В PHP.ini сделайте так, чтобы часть электронной почты выглядела так

; XAMPP: Comment out this if you want to work with an SMTP Server like Mercury
SMTP = localhost
smtp_port = 465

; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from =

; XAMPP IMPORTANT NOTE (1): If XAMPP is installed in a base directory with spaces (e.g. c:\program filesC:\xampp) fakemail and mailtodisk do not work correctly.
; XAMPP IMPORTANT NOTE (2): In this case please copy the sendmail or mailtodisk folder in your root folder (e.g. C:\sendmail) and use this for sendmail_path.
; XAMPP: Comment out this if you want to work with fakemail for forwarding to your mailbox (sendmail.exe in the sendmail folder)
sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"
; XAMPP: Comment out this if you want to work with mailToDisk, It writes all mails in the C:\xampp\mailoutput folder
;sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =

; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
mail.add_x_header=on

2) Сделайте так, чтобы часть sendmail.ini smtp выглядела так

smtp_server=localhost

; smtp port (normally 25)

smtp_port=25

; SMTPS (SSL) support
;   auto = use SSL for port 465, otherwise try to use TLS
;   ssl  = alway use SSL
;   tls  = always use TLS
;   none = never try to use SSL

smtp_ssl=none

; if your smtp server requires authentication, modify the following two lines

[email protected]
auth_password=password

3) Скачать Stunnel https://www.stunnel.org/downloads.html и внесите следующие изменения в stunnel.conf. Stunnel работает в трее, каждый раз, когда вы вносите изменения, щелкните правой кнопкой мыши значок Stunnel и перезагрузите файл conf.

cert = stunnel.pem
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
key = stunnel.pem
[ssmtp]
accept  = 465
connect = 25
[gmail-smtp]
client = yes
accept = 127.0.0.1:25
connect = smtp.gmail.com:465
; To check logs you can enable logging using following lines
debug = 7

4) Перейдите в папку «Sendmail», щелкните правой кнопкой мыши файл sendmail.exe -> «Свойства» -> «Совместимость» -> нажмите кнопку «Внести изменения для всех пользователей» -> выбрать совместимость с Windows XP (Service Pack 3) и установите флажок «Запуск от имени администратора».

5) Всегда запускать XAMPP как администратор !!

Это необходимо только в Windows 8+ (например, в Windows 2008 R2 мне нужно было только правильно настроить sendmail на gmail, и все заработало).

2

Другие решения

в Windows8

после смены

1-php.ini

2-sendmail.ini

перейдите в C: \ xampp \ sendmail

  • 1) Щелкните правой кнопкой мыши sendmail.exe и перейдите в свойства.
  • 2) нажмите вкладку совместимости, затем нажмите изменить настройки для всех пользователей.
  • 3) установить режим совместимости на Windows XP (Service Pack 3)
  • 4) установите флажок для запуска этой программы в качестве администратора.

Надеюсь, что это помогает кому-то еще.

это работает на мой

1

По вопросам рекламы [email protected]