LINUX.ORG.RU

[php] Отправка почты

 


0

0

Функция mail(), которая должна бы отправлять почту, не работает.

Сначала при echo mail('mail@ya.ru','subj','text'); не выдавало результат вообще, потом я поставил postfix и запустил его (sudo postfix start).

Функция стала возвращать значение 1, но почта так и не пришла (вместо mail@ya.ru, естественно, стоял рабочий адрес).

Что ему нужно сделать, чтобы почта отправлялась нормально?

попробуй через постфикс на локалхосте послать мыло на свой внешний адрес (например, через mail в консоли). если прокатит - ковыряй настройки PHP. если нет - ковыряй постфикс.

isden ★★★★★
()

Проблема с postfix, если mail() выплевывает True, то локальный почтовый сервер это письмо захавал, а вот доставить получается не может. Смотри почтовую очередь, смотри почтовые логи.

oc
()
Ответ на: комментарий от isden

mail -s Subject mail@ya.ru

...

Ожидание.. и нифигас. Похоже, нужно что-то конфижить?

NiggasLife
() автор топика
Ответ на: комментарий от oc

логи странные...

Sep 5 20:58:24 localhost postfix/smtp[10350]: connect to alt1.gmail-smtp-in.l.google.com[209.85.133.27]:25: No route to host

Это значит, что я чего-то критического недоустановил.. Кто знает, чего именно?

PS> Извините за тупление, просто я с какой-либо серверной настройкой не сталкивался еще (xampp нивщот)

NiggasLife
() автор топика
Ответ на: комментарий от NiggasLife

telnet alt4.gmail-smtp-in.l.google.com 25

Trying 209.85.220.62...

telnet: Unable to connect to remote host: No route to host

Что бы это, суга, значило? Файрвол не стоит.. *удивлённый смайл*

NiggasLife
() автор топика
Ответ на: комментарий от NiggasLife

Гугл кагбэ намекает, что провайдер может блокировать 25й порт...

NiggasLife
() автор топика
Ответ на: комментарий от NiggasLife

Сделай tracepath или traceroute с этой машины до, например, 209.85.133.27 и кинь вывод сюда. Выглядит так, как буд-то на этой машине инета нету, на что "No route to host" как бы и намекает. Если бы 25 порт был-бы зарезан провайдером, то логично что телнет бы у тебя просто по таймауту отвалился.

oc
()
Ответ на: комментарий от oc

traceroute to 209.85.133.27 (209.85.133.27), 30 hops max, 40 byte packets
1 192.168.1.1 (192.168.1.1) 1.854 ms 2.276 ms 1.523 ms
2 joule-lo0.sm.chereda.net (89.19.123.254) 428.020 ms 493.837 ms 368.448 ms
3 ahead.sm.chereda.net (193.110.16.11) 253.999 ms 265.304 ms 274.609 ms
4 its-chereda.sm.chereda.net (193.110.17.154) 233.900 ms 294.600 ms 303.285 ms
5 quoll.itsinternet.net (213.133.160.52) 224.722 ms * 525.434 ms
6 google-gw.itsinternet.net (213.133.164.166) 583.448 ms 661.789 ms 618.927 ms
7 209.85.241.54 (209.85.241.54) 682.605 ms 589.406 ms 367.029 ms
8 72.14.239.14 (72.14.239.14) 442.026 ms 458.212 ms 421.571 ms
9 66.249.94.139 (66.249.94.139) 416.308 ms 1156.545 ms 266.947 ms
10 72.14.236.251 (72.14.236.251) 326.327 ms 302.021 ms 229.428 ms
11 209.85.250.140 (209.85.250.140) 320.046 ms 381.956 ms 352.539 ms
12 209.85.248.81 (209.85.248.81) 391.319 ms 436.036 ms 273.820 ms
13 209.85.241.85 (209.85.241.85) 296.170 ms 66.249.95.131 (66.249.95.131) 321.708 ms 209.85.241.85 (209.85.241.85) 319.341 ms
14 216.239.43.113 (216.239.43.113) 362.583 ms 209.85.250.54 (209.85.250.54) 311.681 ms 336.947 ms
15 209.85.251.9 (209.85.251.9) 367.063 ms 446.047 ms 457.843 ms
16 72.14.238.127 (72.14.238.127) 449.250 ms 294.856 ms 72.14.232.233 (72.14.232.233) 420.119 ms
17 64.233.174.66 (64.233.174.66) 310.078 ms 216.239.46.130 (216.239.46.130) 300.330 ms 216.239.46.122 (216.239.46.122) 412.045 ms
18 209.85.176.58 (209.85.176.58) 254.522 ms 209.85.176.170 (209.85.176.170) 308.687 ms 209.85.176.42 (209.85.176.42) 821.967 ms
19 * an-in-f27.google.com (209.85.133.27) 748.688 ms 751.524 ms

NiggasLife
() автор топика
Ответ на: комментарий от NiggasLife

Destination Gateway Genmask Flags MSS Window irtt Iface

192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 wlan0

0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 wlan0

NiggasLife
() автор топика
Ответ на: комментарий от NiggasLife

Если честно, я в замешательстве, почему он тебе "No route to host" говорит, если путь до хоста есть.

Попробуй еще на другие SMTP-сервера на 25 порт подцепиться телнетом.

oc
()
Ответ на: комментарий от oc

С мейл.ру те же пироги. Может, нужно его как-то особо конфижить? Я после установки из репозитория к нему не прикасался

NiggasLife
() автор топика
Ответ на: комментарий от NiggasLife

Да не, при условии что с самй сетью нет проблем (и твой IP-адрес не в каком нибудь DNSBL), то должно работать без лишних телодвижений.

oc
()
Ответ на: комментарий от NiggasLife

А у тебя на роутере есть telnet? Еще интересно прямо с роутера посмотреть

oc
()
Ответ на: комментарий от NiggasLife

Ну если особо голову не забивать ерундой, то можно почту слать через mail relay. Правда пока не понятно, что для твоего провайдера есть легитимный почтовый сервер (25 порт резать - это не Ъ), но postfix придеться таки конфигурять.

Если чего-то кодиш, то почту можно слать пока себе на локалхост (руту, например).

oc
()
Ответ на: комментарий от NiggasLife

Щас поставил Evolution, отправил с него письмо, оно дошло. Сходил в логи:

Sep 6 14:04:30 localhost master[813]: fatal: master_spawn: exec /usr/lib/postfix/pickup: No such file or directory
Sep 6 14:04:30 localhost master[814]: fatal: master_spawn: exec /usr/lib/postfix/qmgr: No such file or directory
Sep 6 14:04:31 localhost postfix/master[5562]: warning: process /usr/lib/postfix/pickup pid 813 exit status 1
Sep 6 14:04:31 localhost postfix/master[5562]: warning: /usr/lib/postfix/pickup: bad command startup -- throttling
Sep 6 14:04:31 localhost postfix/master[5562]: warning: process /usr/lib/postfix/qmgr pid 814 exit status 1
Sep 6 14:04:31 localhost postfix/master[5562]: warning: /usr/lib/postfix/qmgr: bad command startup -- throttling

Вопросы:

- чем отправляет эволюшн?
- у меня нет постфикса? (/usr/lib/postfix)

NiggasLife
() автор топика
Ответ на: комментарий от oc

Некоторые провайдеры закрывают 25 порт в мир, только через их релей или смтп-сервер, борьба с вин-спам-ботами =)

RR
()
Ответ на: комментарий от RR

Указан. Но в логах почему-то не светится ничего. 25й порт не заблокирован, я уточнил.

KRoN73, попробую Ваш способ еще

Да, еще с одной машины в сети (Бунту 9.04) проделал те же действия - тот же результат. На той же машине под виндой телнет соединяется... Может, что-то в iptables накурочено?

NiggasLife
() автор топика
Ответ на: комментарий от RR

Iptables вроде чист:

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Хз что делать. И на арчевском форуме молчат..

NiggasLife
() автор топика
Ответ на: комментарий от RR

В том-то и дело, что провайдер "чист" - из оффтопика телнетится спокойно. А Линукс капризничает. Причем в 2х разных дистрибутивах - бунта и арч (и на двух разных машиназ)

NiggasLife
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.