Ich entwickle eine kleine Webseite mit CakePHP 3. Es verfügt über ein sehr einfaches Kontaktformular, das eine E-Mail mit SMTP-Server von 1and1.es sendet.Fehler 500 beim Senden von E-Mail mit CakePHP 3
Dies ist mein Transport Konfiguration an config/app.php:
'EmailTransport' => [
'smtp' => [
'className' => 'Smtp',
// The following keys are used in SMTP transports
'host' => 'smtp.1and1.es',
'port' => 587,
'timeout' => 30,
'username' => '[email protected]',
'password' => 'mypassword',
'client' => null,
'tls' => true,
'url' => env('EMAIL_TRANSPORT_DEFAULT_URL', null),
],
],
Es funktioniert gut bei der lokalen Entwicklung Sever (Xampp auf Ubuntu 14.04): Ich bin alle E-Mails zu empfangen. Aber es wirft einen 500 Internal Server Error auf dem Produktionsserver (1and1 shared server), der dieselbe obige Konfiguration verwendet. Gleiche PHP-Version auf beiden Servern.
Ich habe ähnliche Fragen hier bei Stackoverflow gefunden, aber nichts hat mir geholfen. Übrigens kann ich nicht auf Apache-Fehlerprotokolle im Server zugreifen.
Jede Hilfe wäre willkommen. Danke im Voraus.
EDIT:
ich gerade gefunden habe, dass CakePHP Datei error.log einige relevante Informationen hat:
2016-10-09 22:18:38 Error: [Cake\Network\Exception\SocketException] Connection timed out
Request URL: /home/index
Referer URL: http://monitomolon.es/
Stack Trace:
#0 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Mailer/Transport/SmtpTransport.php(207): Cake\Network\Socket->connect()
#1 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Mailer/Transport/SmtpTransport.php(162): Cake\Mailer\Transport\SmtpTransport->_connect()
#2 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Mailer/Email.php(1344): Cake\Mailer\Transport\SmtpTransport->send(Object(Cake\Mailer\Email))
#3 /homepages/14/d393557898/htdocs/monitomolon/src/Form/ContactForm.php(56): Cake\Mailer\Email->send('Nombre: Diego A...')
#4 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Form/Form.php(179): App\Form\ContactForm->_execute(Array)
#5 /homepages/14/d393557898/htdocs/monitomolon/src/Controller/HomeController.php(13): Cake\Form\Form->execute(Array)
#6 [internal function]: App\Controller\HomeController->index()
#7 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Controller/Controller.php(435): call_user_func_array(Array, Array)
#8 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/ActionDispatcher.php(122): Cake\Controller\Controller->invokeAction()
#9 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/ActionDispatcher.php(96): Cake\Http\ActionDispatcher->_invoke(Object(App\Controller\HomeController))
#10 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/BaseApplication.php(83): Cake\Http\ActionDispatcher->dispatch(Object(Cake\Network\Request), Object(Cake\Network\Response))
#11 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/Runner.php(65): Cake\Http\BaseApplication->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response), Object(Cake\Http\Runner))
#12 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Routing/Middleware/RoutingMiddleware.php(53): Cake\Http\Runner->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response))
#13 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/Runner.php(65): Cake\Routing\Middleware\RoutingMiddleware->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response), Object(Cake\Http\Runner))
#14 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Routing/Middleware/AssetMiddleware.php(88): Cake\Http\Runner->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response))
#15 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/Runner.php(65): Cake\Routing\Middleware\AssetMiddleware->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response), Object(Cake\Http\Runner))
#16 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Error/Middleware/ErrorHandlerMiddleware.php(81): Cake\Http\Runner->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response))
#17 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/Runner.php(65): Cake\Error\Middleware\ErrorHandlerMiddleware->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response), Object(Cake\Http\Runner))
#18 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/Runner.php(51): Cake\Http\Runner->__invoke(Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response))
#19 /homepages/14/d393557898/htdocs/monitomolon/vendor/cakephp/cakephp/src/Http/Server.php(92): Cake\Http\Runner->run(Object(Cake\Http\MiddlewareQueue), Object(Zend\Diactoros\ServerRequest), Object(Zend\Diactoros\Response))
#20 /homepages/14/d393557898/htdocs/monitomolon/webroot/index.php(37): Cake\Http\Server->run()
#21 {main}
Wir Ihnen nicht helfen können, wenn Sie nicht den Fehler oder verengen das Problem zu etwas jenseits Teil eines Arrays finden/zugreifen. –
Was sagt die http-Server-Fehlerprotokolldatei? _We_ kann Ihnen sicherlich nicht sagen ... – arkascha
Also, die Zeitüberschreitung der Verbindung, die ich erwarten würde bedeutet wahrscheinlich, dass Ihr 1and1-Host SMTP-Verbindungen blockiert. –