Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Настройка Apache+PHP+sendmail для работы с функцией mail()

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
SergeyQW
Отправлено: 22 Января, 2009 - 18:21:35
Post Id



Новичок


Покинул форум
Сообщений всего: 52
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




Итак, проблема заключается в том, что сайт не отправляет письма функцией mail(). Когда запускаю следущий скрипт
PHP:
скопировать код в буфер обмена
  1. <?
  2. $headers = "MIME-Version: 1.0\r\n";
  3. $headers .= "Content-Type: text/plain; charset=windows-1251\r\n";
  4. $headers .= "From: Проверка почтового сервера \r\n";
  5.  
  6. if (mail("admin@localhost", "Тестовое сообщение", "Текст", $headers))
  7. echo "Почтовый сервер работает правильно";
  8. else echo "Почтовый сервер не работает";
  9. ?>

в ответ пишет "Почтовый сервер работает правильно"

Установлено: Apache 2.2.11; PHP 5.2.8; Courier Mail Server; sendmail.
Courier Mail Server отправляет письма нормально через SMTP.
В php.ini прописал
Цитата:
[mail function]
; For Win32 only.
SMTP =
smtp_port = 25

; For Win32 only.
sendmail_from =

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
sendmail_path ="C:\WEB\sendmail\sendmail.exe -t"

; 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 =
как было написано в этой статье:http://www[dot]simplecoding[dot]org/php-[dot][dot][dot]pod-windows[dot]html
а тут конфигурация sendmail.ini
Цитата:

; configuration for fake sendmail

; if this file doesn't exist, sendmail.exe will look for the settings in
; the registry, under HKLM\Software\Sendmail

[sendmail]

; you must change mail.mydomain.com to your smtp server,
; or to IIS's "pickup" directory. (generally C:\Inetpub\mailroot\Pickup)
; emails delivered via IIS's pickup directory cause sendmail to
; run quicker, but you won't get error messages back to the calling
; application.

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=auto

; the default domain for this server will be read from the registry
; this will be appended to email addresses when one isn't provided
; if you want to override the value in the registry, uncomment and modify

default_domain=localhost

; log smtp errors to error.log (defaults to same directory as sendmail.exe)
; uncomment to enable logging

error_logfile=error.log

; create debug log as debug.log (defaults to same directory as sendmail.exe)
; uncomment to enable debugging

debug_logfile=debug.log

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

auth_username=admin@localhost
auth_password=admin

; if your smtp server uses pop3 before smtp authentication, modify the
; following three lines. do not enable unless it is required.

pop3_server=
pop3_username=
pop3_password=

; to force the sender to always be the following email address, uncomment and
; populate with a valid email address. this will only affect the "MAIL FROM"
; command, it won't modify the "From: " header of the message content

force_sender=

; sendmail will use your hostname and your default_domain in the ehlo/helo
; smtp greeting. you can manually set the ehlo/helo name if required

hostname=


Посоветуйте пожалуйста что нужно сделать, что бы это все работало как надо.
ЗЫ система Win XP SP3

(Отредактировано автором: 22 Января, 2009 - 18:34:24)

 
 Top
vitaliy_mad
Отправлено: 22 Января, 2009 - 18:38:16
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




попробуй не через sendmail а через SMTP то есть сокеты... и возмоно серваку надо смтп аутенификация
 
 Top
SergeyQW
Отправлено: 22 Января, 2009 - 18:39:46
Post Id



Новичок


Покинул форум
Сообщений всего: 52
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




Хм... Спасибо. Буду пробовать...
 
 Top
vitaliy_mad
Отправлено: 22 Января, 2009 - 18:42:07
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




http://i-novice[dot]net/smtp-otpravk[dot][dot][dot]j-svoimi-rukami/
Почитай я буквально по нему вчера делал отправку... хороший мануал
 
 Top
SergeyQW
Отправлено: 22 Января, 2009 - 18:47:59
Post Id



Новичок


Покинул форум
Сообщений всего: 52
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




Спасибо! Кстати только что смог отправить самому себе почту через сервер yandex.ru ))))) Уже прогресс..... Буду мучаться чтобы отправлял через мой сервер на localhost. А за мануал огромное спасибо! Сейчас буду осваивать)
(Добавление)
Кстати... Возник еще вопрос: Интернет провайдер Стрим. А он блокирует порт 25. Если я поменяю порт на 30 то у меня вообще не ходит почта. Что нужно делать если изменил порт? Как отправлять почту со своего сервера например на тот же яндекс?
 
 Top
vitaliy_mad
Отправлено: 22 Января, 2009 - 19:39:04
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




на твой севрвер не будут приходить письма из-вне... а локально просто обращаться на сообтветсвующий порт... если все правильно на сервере настроено, то все получиться.. но из-вне почта не будет работать.
 
 Top
SergeyQW
Отправлено: 22 Января, 2009 - 21:10:26
Post Id



Новичок


Покинул форум
Сообщений всего: 52
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




то есть что бы работало из вне, то порт обязан быть 25?
 
 Top
vitaliy_mad
Отправлено: 22 Января, 2009 - 22:27:48
Post Id


Участник


Покинул форум
Сообщений всего: 1107
Дата рег-ции: Окт. 2008  
Откуда: Украина, Мариуполь


Помог: 0 раз(а)




SergeyQW пишет:
то есть что бы работало из вне, то порт обязан быть 25?
да все почтовики шлют почту на принимающие сервера на 25 порт
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Apache и другие веб-серверы »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB