Problemas de CakeEmail en el servidor

Estoy usando cakeEmail para forma simple y en localhost funcionó muy bien, pero en el servidor (hosting) me muestra este error:

CONNECTION REFUSED Error: An Internal Error Has Occurred. Stack Trace CORE/Cake/Network/Email/SmtpTransport.php line 101 → CakeSocket->connect() CORE/Cake/Network/Email/SmtpTransport.php line 61 → SmtpTransport->_connect() CORE/Cake/Network/Email/CakeEmail.php line 1124 → SmtpTransport->send(CakeEmail) APP/Controller/ProductsController.php line 26 → CakeEmail->send(string) [internal function] → ProductsController->email() CORE/Cake/Controller/Controller.php line 490 → ReflectionMethod->invokeArgs(ProductsController, array) CORE/Cake/Routing/Dispatcher.php line 187 → Controller->invokeAction(CakeRequest) CORE/Cake/Routing/Dispatcher.php line 162 → Dispatcher->_invoke(ProductsController, CakeRequest, CakeResponse) APP/webroot/index.php line 111 → Dispatcher->dispatch(CakeRequest, CakeResponse) 

No tengo idea de dónde está el problema.

mi Config / email.php:

 public $default = array( 'transport' => 'Smtp', 'from' => array('info@olvi.cz' => 'My Site'), 'host' => 'smtp.savana.cz', 'port' => 25, 'timeout' => 30, 'username' => 'info@olvi.cz', 'password' => '****', 'client' => null, 'log' => false, ); 

Mi ProductsController.php:

 public function email(){ App::uses('CakeEmail', 'Network/Email'); if ($this->request->is('post')) { $email = new CakeEmail('default'); $email->from(array('info@olvi.cz' => $this->request->data['Email']['name'])); $email->to($this->request->data['Email']['sender']); $email->subject($this->request->data['Email']['name']); $email->send($this->request->data['Email']['message']); $this->Session->setFlash(__('Zpráva byla odeslána.')); } } 

y ver email.ctp:

 echo $this->Form->create('Email'); echo $this->Form->input('name',array('label' => 'Jméno', 'required' => 'required')); echo $this->Form->input('sender',array('type' => 'email','label' => 'Váš e-mail', 'required' => 'required')); echo $this->Form->input('message', array('type' => 'textarea', 'label' => 'Zpráva', 'required' => 'required')); echo $this->Form->submit('Odeslat', array('id' => 'button', 'div' => false)); echo $this->Form->end(); 

Traté de llamar a mi enlace de ayuda de alojamiento y ellos no tienen idea, pero dice que PHPMailer funciona. Soy nuevo con CakePHP, así que tengo problemas para moverlo al servidor. ¿Alguien puede por favor? Estoy realmente metido en este problema.

Gracias

Causas probables:

  1. ¿El servidor desde el que se ejecuta tiene un bloque de spam en sus direcciones IP? Es probable que el servidor SMTP no permita la conexión desde su servidor de alojamiento. Por lo tanto, el error CONNECTION REFUSED . No es algo en el servidor desde el que está ejecutando el código, sino el servidor al que está intentando iniciar sesión.

  2. Las credenciales de SMTP no son correctas. Tal vez hay algo que falta. Intenta conectarte usando esas credenciales desde otra ubicación para ver si realmente puedes conectarte.

  3. Son las credenciales SMTP para el mismo host desde el que se está ejecutando. Quizás el host no permita la conexión de salida a SMTP para evitar que sus servidores se utilicen como una máquina de envío de spam.

Soluciones posibles

Si ninguna de las causas probables es la culpable, tal vez haya un problema con la configuración. Tu tienes esto:

 public $default = array( 'transport' => 'Smtp', 'from' => array('info@olvi.cz' => 'My Site'), 'host' => 'smtp.savana.cz', 'port' => 25, 'timeout' => 30, 'username' => 'info@olvi.cz', 'password' => '****', 'client' => null, 'log' => false, ); 

Intente simplificarlo y cambiarlo a los mínimos:

 public $default = array( 'transport' => 'Smtp', 'host' => 'smtp.savana.cz', 'port' => 25, 'username' => 'info@olvi.cz', 'password' => '****', );