почта php () функция, крайне медленная на локальной машине разработки

Я в настоящее время реализую ИДОЛА для одного из наших клиентов. Это - очень мощный продукт.

Я рекомендовал бы:

  • начинать с малого. Возможно, только со всего одним коннектором и ИДОЛОМ и небольшой выборкой данных. Вы будете лучше видеть вид проблем (технические вопросы, бизнес-решения...), необходимо будет иметь дело с. Затем увеличьте сложность своей архитектуры.
  • быть осторожным с проблемами безопасности. Протестируйте конфигурацию безопасности своих коннекторов и Вашего OGS. Что происходит, если Вы изменяете безопасность на документе на базе данных...? Изменение копируется на ИДОЛЕ?
  • рассмотрите свой проект как проект разработки и действительно протестируйте свои разработки / конфигурации.
  • Сделайте бизнес-анализ, рассмотрев поля данных. Какие поля искать дисплей/, каков будет тип поля в ИДОЛЕ (индекс, параметрический, дата, числовая...)?
  • Если Вы планируете разработать пользовательский GUI, возможно, запустите его, после того как конфигурация сервера ИДОЛА полностью тестируется.
  • Создайте команду с людьми, которые знают продукт и уже работали с ним.

    Если у Вас есть какой-либо вопрос, не колеблются,

Весело провести время :-)

J.

21
задан 24 August 2010 в 06:15
5 ответов

Это работало на меня:

  • Постфикс установки

См. инструкции здесь относительно того, как сделать это здесь: https://help.ubuntu.com/community/Postfix (Это может уже быть установлено, и 'sendmail' двоичный файл, может на самом деле быть псевдонимом для постфикса),

  • Следуйте инструкциям здесь:

http://lenss.nl/2009/01/making-php-mail-work-on-ubuntu-through-postfix/

mkfifo /var/spool/postfix/public/pickup

Найдите sendmail процесс

ps aux | grep mail

Уничтожьте его

kill <thepid>

Перезапуск postfix

/etc/init.d/postfix restart

Я думаю, что можно просто установить 'myorigin' параметр на любое активное доменное имя, такое как доменное имя, которым Вы владеете.

2
ответ дан 2 December 2019 в 20:06

Хорошо я знаю, что это не то, что Вы спрашиваете, а почему Вы не пробуете Postfix или Exim? Они оба доступны человечности (Постфикс является даже значением по умолчанию mta в системах Ubuntu), и они оба обеспечивают, совместимый 'sendmail' управляют что работы очень хорошо. По моему скромному мнению, sendmail отчасти датирован, и Вы получите лучшие возможности поддержки с более современным MTA.

6
ответ дан 2 December 2019 в 20:06
  • 1
    Даже если существуют лучшие почтовые системы, чем sendmail, проблемой является mainting сервер разработки, который зеркально отражает рабочий сервер. sendmail является почтовым агентом по умолчанию для php. –  Michael B 24 August 2010 в 08:12
  • 2
    Вы имеете в виду sendmail программное обеспечение или sendmail двоичный файл? Поскольку Exim и Постфикс также имеют sendmail двоичный файл, который принимает те же опции как исходный sendmail для вопросов совместимости. тонкие клиенты –  coredump 24 August 2010 в 15:22

Это может или не может быть решением для Вас: добавить mail.force_extra_parameters = "-fsender@somewhere.com" в Ваш файл php.ini. Это заставляет PHP автоматически добавить -fsender@somewhere.com как пятый параметр к почте PHP () функция.

Это - значение hardcoded и только применимый в php.ini, таким образом, это не будет очень гибко, но возможно работает на Вас в Вашем случае разработки?

1
ответ дан 2 December 2019 в 20:06

Путем наблюдения сетевого трафика (думают tcpdump) или путем выполнения strace на Вашем sendmail или апачских процессах, необходимо смочь понять то, почему та задержка там так, чтобы можно было решить корневую проблему.

Обычно задержки того диапазона происходят из-за провальных поисков DNS, но Вы не будете знать, пока Вы не посмотрите. Если Вы не решите базовую проблему, она, вероятно, закончит тем, что была проблемой, неважно, как Вы пытаетесь работать вокруг этого.

0
ответ дан 2 December 2019 в 20:06
  • 1
    Задержка вызывалась именем хоста, являющимся отдельным словом, а не FQDN (полностью определенное доменное имя). Путем указания sendmail к/etc/hosts и наличия localhost.domain как первое доменное имя (который является FQDN) нет никакой задержки. Это было зафиксировано на шагах 1-4. Остающаяся проблема должна использовать '-f' - все еще основное улучшение при необходимости ожидать 2 минуты для отправки почты. –  Michael B 24 August 2010 в 08:15

Я никогда не сталкивался с проблемой с помощью почты () в PHP, который не был результатом проблемы на MTA.

В Вашем файле php.ini это покажет то, что управляет, чтобы это работало для отправки электронного письма (значение по умолчанию: "sendmail-t-i"). Попытайтесь послать электронное письмо из командной строки с помощью этого - я поставлю его медленное.

Обычные вещи проверить состоят в том, настроен ли сервер DNS правильно на машине (и может разрешить все адреса, настроенные в MTA), и что, если умное реле настроено затем, имя разрешимо к адресу, с которым может соединиться система.

0
ответ дан 2 December 2019 в 20:06

Теги

Похожие вопросы