|
|
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
Пытаюсь отправить email из PHP. PHP на компьютере с Windows 7. В php.ini установлено max_execution_time = 70 Открывается сокет, устанавливается таймаут (который на самом деле не устанавливается, но проблема не в этом), и читается посимвольно поток (и выводится в лог): Код: php 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Вывод получается вот такой, т.е. перед считыванием первого символа (2) проходит 30 секунд: getlines... (14:31: 10 ); 2 (14:31: 40 ); 2 (14:31:40); 0 (14:31:40); (14:31:40); m (14:31:40); a (14:31:40); i (14:31:40); l (14:31:40); . (14:31:40); a (14:31:40); v (14:31:40); t (14:31:40); o (14:31:40); d (14:31:40); o (14:31:40); m (14:31:40); . (14:31:40); r (14:31:40); u (14:31:40); (14:31:40); E (14:31:40); S (14:31:40); M (14:31:40); T (14:31:40); P (14:31:40); (14:31:40); (14:31:40); Если выполнить эту же команду через телнет (telnet myservername.ru 25), то ответ в консоль возвращается мгновенно: автор220 myservername.ru ESMTP На этом же компьютере установлен почтовик (bat), который читает и отправляет почту без задержек. Подскажите, в чём может быть причина того, что через консоль всё работает прекрасно, а через php возникает такая вот 30 секундная задержка? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2012, 15:25:24 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
Буду рад любой идее. Вот ещё выяснялись дополнительные обстоятельства. Пробую отправить почту с помощью VBScript. Вот файлик send_mail_test.vbs, который отправляет почту: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. Вот батник, который запускает этот файл: Код: sql 1. Всё работает прекрасно, если запускать батник из консоли. Отправляет мгновенно и получаю письмо мгновенно! Но всё меняется, когда я запускаю этот VBScript из php: Код: php 1. 2. 3. 4. 5. 6. Отправка-то происходит мгновенно, но доходит это письмо стабильно за 5 минут. Если отправить повторное письмо, не дождавшись 5 минут, то первое письмо не доставляется, а второе приходит спустя 5 минут. И почтовый клиент эти 5 минут как-то подозрительно долго проверяет письма. По минуте ожидает ответа при каждом запросе. А как только письмо получил, так и скорость проверки увеличивается, за 1 секунду дальше проверяет наличие писем. В общем, подскажите, в чём может быть дело? Буду рад любой идее. Может быть причина в каких-то специфических настройках операционной системы на моём компе? Может быть в сети проблема? В почтовом сервере? Куда копать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2012, 18:32:42 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
И ещё одна важная подробность. Этот-же скрипт запуска VBScript (exec) с другого сервера этой-же сети отрабатывает без нареканий. Проблема в настройке моего компьютера? Пробовал отключать антивирус, брандмауэр отключен. Что ещё можно посмотреть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2012, 19:02:09 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
mnvxвсё меняется, когда я запускаю этот VBScript из php:Сам то пхпшный скрипт запускаете как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2012, 19:15:57 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
vkle, Просто в браузере открываю страничку php ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2012, 19:50:07 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
mnvx, Не все так просто, ознакомьтесь с основами работы PHP. Попробуйте выполнить скрипт php из консоли. Если при вызове из консоли будет работать нормально, тогда проблема скорее всего в настройках вебсервера или в связке вебсервера и пхп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2012, 21:50:13 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
vkle, Спасибо, Вы правильно указали направление! Один и тот-же скрипт из консоли отрабатывает прекрасно, а при открытии страницы из браузера возникает задержка с доставкой почты. Какие настройки веб-сервера стоит смотреть, в чём может быть дело? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2012, 12:13:32 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
Кстати, ещё 1 момент. Пробовал отправить письмо с помощью sendmail.exe (из консоли). С моего компьютера письмо отправляется с задержкой 5 минут (5 минут висит консоль, пока письмо не отправится). А с соседнего компьютера этой же сети, с помощью sendmail отправка проходит без проблем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2012, 13:30:42 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
mnvxКакие настройки веб-сервера стоит смотреть, в чём может быть дело?Окружение, пользователь (профиль), права доступа, несовместимость версий, черт знает что еще... Недавно пробегала тема с похожей проблемой, под IIS скрипт отказывался корректно работать, под Апачем заработал нормально. mnvxС моего компьютера письмо отправляется с задержкой 5 минут (5 минут висит консоль, пока письмо не отправится). А с соседнего компьютера этой же сети, с помощью sendmail отправка проходит без проблем.Антивирус, проблема с ДНС, маршрутизацией? Хотя, слишком уж долгие задержки. А что говорят по этой теме админы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2012, 13:39:41 |
|
||
|
fgetc ждёт 30 секунд перед считыванием из сокета
|
|||
|---|---|---|---|
|
#18+
vkle, спасибо за советы. Админы порекомендовали попробовать переустановить сетевые драйвера, несмотря на то, что конфликтов в конфигурации не отмечено системой. Но в итоге перенесли скрипты на другой сервер и там всё работает корректно, меня это на данный момент устраивает. Если вдруг установится причина тормозов с почтой, отпишусь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.04.2012, 23:42:38 |
|
||
|
|

start [/forum/topic.php?fid=23&gotonew=1&tid=1465289]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
195ms |
get topic data: |
12ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 508ms |

| 0 / 0 |
