The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"php не отправляет почту"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"php не отправляет почту"  
Сообщение от Blood Angel email on 31-Мрт-08, 12:47 
есть форум, который отправлял почту. крутился на freebsd 6.2 перенес на новый сервер под управлением centos. отвалилась почта. диагностика с форума говорит:
Почтовая функция возвратила ошибку при попытке отправить почту.
Обнаружены следующие ошибки PHP при попытке отправить почту:


Warning: fsockopen() [function.fsockopen]: unable to connect to IPADDRESS:25 (Permission denied) in /includes/class_mail.php on line 604

Warning: Unable to connect to SMTP server in /includes/class_mail.php on line 586

почтовый сервер не менялся (внешний по отношению к обоим вариантам форума


PHP Version 5.1.6 с нового сервака

System  Linux forum 2.6.18-53.el5 #1 SMP Mon Nov 12 02:14:55 EST 2007 x86_64  
Build Date  Sep 20 2007 10:05:56  
Configure Command  './configure' '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/usr/com' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--cache-file=../config.cache' '--with-libdir=lib64' '--with-config-file-path=/etc' '--with-config-file-scan-dir=/etc/php.d' '--disable-debug' '--with-pic' '--disable-rpath' '--without-pear' '--with-bz2' '--with-curl' '--with-exec-dir=/usr/bin' '--with-freetype-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--without-gdbm' '--with-gettext' '--with-gmp' '--with-iconv' '--with-jpeg-dir=/usr' '--with-openssl' '--with-png' '--with-pspell' '--with-expat-dir=/usr' '--with-pcre-regex=/usr' '--with-zlib' '--with-layout=GNU' '--enable-exif' '--enable-ftp' '--enable-magic-quotes' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-track-vars' '--enable-trans-sid' '--enable-yp' '--enable-wddx' '--with-kerberos' '--enable-ucd-snmp-hack' '--with-unixODBC=shared,/usr' '--enable-memory-limit' '--enable-shmop' '--enable-calendar' '--enable-dbx' '--enable-dio' '--with-mime-magic=/etc/httpd/conf/magic' '--without-sqlite' '--with-libxml-dir=/usr' '--with-xml' '--with-apxs2=/usr/sbin/apxs' '--without-mysql' '--without-gd' '--without-odbc' '--disable-dom' '--disable-dba' '--without-unixODBC' '--disable-pdo' '--disable-xmlreader' '--disable-xmlwriter'  
Server API  Apache 2.0 Handler  
Virtual Directory Support  disabled  
Configuration File (php.ini) Path  /etc/php.ini  
Scan this dir for additional .ini files  /etc/php.d  
additional .ini files parsed  /etc/php.d/gd.ini, /etc/php.d/mysql.ini, /etc/php.d/mysqli.ini, /etc/php.d/ncurses.ini, /etc/php.d/pdo.ini, /etc/php.d/pdo_mysql.ini, /etc/php.d/pdo_sqlite.ini  
PHP API  20041225  
PHP Extension  20050922  
Zend Extension  220051025  
Debug Build  no  
Thread Safety  disabled  
Zend Memory Manager  enabled  
IPv6 Support  enabled  
Registered PHP Streams  php, file, http, ftp, compress.bzip2, compress.zlib, https, ftps  
Registered Stream Socket Transports  tcp, udp, unix, udg, ssl, sslv3, sslv2, tls  
Registered Stream Filters  string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, bzip2.*, zlib.*  

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "php не отправляет почту"  
Сообщение от PavelR (??) on 31-Мрт-08, 13:20 

На данном хостинге нельзя скриптами отправлять почту на внешние смтп-сервера прямым подключением на 25 порт.Это сделано для ограничения возможностей по рассылке спама скриптами. Так бывает.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "php не отправляет почту"  
Сообщение от Blood Angel email on 31-Мрт-08, 13:29 
>
>На данном хостинге нельзя скриптами отправлять почту на внешние смтп-сервера прямым подключением
>на 25 порт.Это сделано для ограничения возможностей по рассылке спама скриптами.
>Так бывает.

нет, все открыто, да и как они собираются анализировать телнетом/smtp ли я отправляю или через скрипт?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "php не отправляет почту"  
Сообщение от PavelR (??) on 31-Мрт-08, 13:37 
>>
>>На данном хостинге нельзя скриптами отправлять почту на внешние смтп-сервера прямым подключением
>>на 25 порт.Это сделано для ограничения возможностей по рассылке спама скриптами.
>>Так бывает.
>
>нет, все открыто, да и как они собираются анализировать телнетом/smtp ли я
>отправляю или через скрипт?

Я не столь уверен в том, что все открыто, как Вы.
А анализировать ничего не надо. Надо просто закрыть исходящие на 25 порт от пользователя апач.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "php не отправляет почту"  
Сообщение от Blood Angel email on 31-Мрт-08, 13:44 
>Я не столь уверен в том, что все открыто, как Вы.
>А анализировать ничего не надо. Надо просто закрыть исходящие на 25 порт
>от пользователя апач.

вы наверное не поняли, я являюсь администратором этого же сервера, и сброс правил фаирвола ничего не дает. если же предположить, что на аплинке сидят и анализируют трафик по содержимому, то сильно сомневаюсь. да и на локальный smtp  ничего не отправляется, если указать в настройках юзать php mail(), то все ок. через него почта сыпился на localhost, однако настраивать локально почтовку как-то не хочется, когда есть уже одна работающая...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "php не отправляет почту"  
Сообщение от Blood Angel email on 31-Мрт-08, 13:32 
Более того, указывая в качестве smtp сервера localhost - получаем ту же самую ошибку. что-то я видимо в php недокрутил :(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "php не отправляет почту"  
Сообщение от Blood Angel email on 31-Мрт-08, 15:52 
>Более того, указывая в качестве smtp сервера localhost - получаем ту же
>самую ошибку. что-то я видимо в php недокрутил :(

А указывая например 80 порт - все нормально, пытаемся установить соединение куда угодно....

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "php не отправляет почту"  
Сообщение от vapetrov (??) on 01-Апр-08, 06:11 
>>Более того, указывая в качестве smtp сервера localhost - получаем ту же
>>самую ошибку. что-то я видимо в php недокрутил :(
>
>А указывая например 80 порт - все нормально, пытаемся установить соединение куда
>угодно....

Возможно SMTP-сервер не слушает порт на 127.0.0.1:25, с слушает только внешний интерфейс.
Попробуй посмотреть
netstat -l -n -p


А еще мне кажется странным сообщение об ошибке. Было бы интересно посмотреть на /includes/class_mail.php on line 604 и увидеть с каким параметрами там вызывается функция fsockopen ?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "php не отправляет почту"  
Сообщение от Blood Angel email on 01-Апр-08, 07:22 
>[оверквотинг удален]
>
>Возможно SMTP-сервер не слушает порт на 127.0.0.1:25, с слушает только внешний интерфейс.
>
>Попробуй посмотреть
>netstat -l -n -p
>
>
>А еще мне кажется странным сообщение об ошибке. Было бы интересно посмотреть
>на /includes/class_mail.php on line 604 и увидеть с каким параметрами там
>вызывается функция fsockopen ?

слушает, слушает...
в 604 строке          $this->smtpSocket = fsockopen($this->smtpHost, $this->smtpPort, $errno, $errstr, 30);

более того такой вот простейший тест
<?php
$fp = fsockopen("IPADDRESS", 25, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: www.example.com\r\n";
    $out .= "Connection: Close\r\n\r\n";

    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
?>
тоже не проходит. указываем к примеру там 80 порт или 53 проходит. а 25, 1153 да и вообще какие-нибудь левые - фиг. в том числе и на локал хост.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "php не отправляет почту"  
Сообщение от Blood Angel email on 01-Апр-08, 13:34 
вылечилось следующим:
setsebool -P httpd_can_network_connect 1
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру