2012-01-30 3 views
1

Я использую sendmail с PHP (CakePHP 1.3) на Linux Server (Ubuntu 10.10), и он берет навсегда выполнение, но в конечном итоге проходит. SMTP работает как демон - некоторое время я думал, что проблема в том, что он должен был запустить процесс на каждом send().Sendmail() занимает много времени, чтобы выполнить

Я немного новичок, когда дело доходит до конфигурации сервера, поэтому любая помощь приветствуется.

Вот мой код приложения, для справки:

  $this->Email->from = 'Hello <[email protected]>'; 
      $this->Email->to  = 'Hello <[email protected]>'; 
      $this->Email->subject = 'Hello'; 
      $this->Email->sendAs = 'html'; 
      $this->Email->template = 'my_template'; 
      $this->data['Inquiry']['id']= $this->Inquiry->id; 
      $this->set('inquiry', $this->data['Inquiry']); 
      $this->Email->send(); 
+0

Возможно, есть какие-либо указатели в вашем файле журнала сообщений? – Oldskool

+0

Общие сведения: считается, что рекомендуется использовать согласованное соглашение об именах, все имена переменных, свойств, функций и методов должны быть строчными, несколько слов могут быть названы либо with_underscores_each, либо withCamelCase. Только имена классов должны иметь первую букву в верхнем регистре. –

+0

Если почта действительно доставлена, возможно, ваш smtp/sendmail deamon собирает почту и отправляет их в промежуток времени. –

ответ

2

И, конечно же, я нашел решение самого сразу после размещения вопроса.

я пропустил эту важную строку из моего кода:

$this->Email->delivery = 'smtp';

Надеется, что это полезно для других!

+0

также вы забыли упомянуть о той версии, которую используете, - вы должны знать, что это важно для обеспечения адекватной помощи. – mark

+0

У меня была аналогичная проблема, но код немного другой. 'mail ($ to_add, $ subject, $ message, $ headers, '[email protected]', $ доставка);' – user2465936

Смежные вопросы