2016-04-29 305 views
1

我正在使用Laravel-5.1進行開發。我的.env配置文件在Windows 8,4GB RAM的開發環境下正常工作。當我部署的是的CentOS-6遠程服務器上,我開始收到此錯誤:無法與主機smtp.gmail.com建立連接[Permission denied#13]

Swift_TransportException in StreamBuffer.php line 265: 
Connection could not be established with host smtp.gmail.com [Permission denied #13] 
in StreamBuffer.php line 265 
at Swift_Transport_StreamBuffer->_establishSocketConnection() in StreamBuffer.php line 62 
at Swift_Transport_StreamBuffer->initialize(array('protocol' => 'tcp', 'host' => 'smtp.gmail.com', 'port' => '587', 'timeout' => '30', 'blocking' => '1', 'tls' => true, 'type' => '1')) in AbstractSmtpTransport.php line 113 
at Swift_Transport_AbstractSmtpTransport->start() in Mailer.php line 79 
at Swift_Mailer->send(object(Swift_Message), array()) in Mailer.php line 395 
at Mailer->sendSwiftMessage(object(Swift_Message)) in Mailer.php line 181 
at Mailer->send('email.verify', array('users' => object(User), 'confirmation_code' => 'kdsEeEcS0wGI6YYyzPJqwa0ZM0i10t'), object(Closure)) in Facade.php line 222 
at Facade::__callStatic('send', array('email.verify', array('users' => object(User), 'confirmation_code' => 'kdsEeEcS0wGI6YYyzPJqwa0ZM0i10t'), object(Closure))) in UserController.php line 70 
at Mail::send('email.verify', array('users' => object(User), 'confirmation_code' => 'kdsEeEcS0wGI6YYyzPJqwa0ZM0i10t'), object(Closure)) in UserController.php line 70 
at UserController->store(object(UserRequest)) 
at call_user_func_array(array(object(UserController), 'store'), array(object(UserRequest))) in Controller.php line 256 
at Controller->callAction('store', array(object(UserRequest))) in ControllerDispatcher.php line 164 
at ControllerDispatcher->call(object(UserController), object(Route), 'store') in ControllerDispatcher.php line 112 
at ControllerDispatcher->Illuminate\Routing\{closure}(object(Request)) 
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 
at Pipeline->then(object(Closure)) in ControllerDispatcher.php line 114 
at ControllerDispatcher->callWithinStack(object(UserController), object(Route), object(Request), 'store') in ControllerDispatcher.php line 69 
at ControllerDispatcher->dispatch(object(Route), object(Request), 'App\Http\Controllers\UserController', 'store') in Route.php line 203 
at Route->runWithCustomDispatcher(object(Request)) in Route.php line 134 
at Route->run(object(Request)) in Router.php line 708 
at Router->Illuminate\Routing\{closure}(object(Request)) 
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 
at Pipeline->then(object(Closure)) in Router.php line 710 
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 675 
at Router->dispatchToRoute(object(Request)) in Router.php line 635 
at Router->dispatch(object(Request)) in Kernel.php line 236 
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) 
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfToken.php line 50 
at VerifyCsrfToken->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 49 
at ShareErrorsFromSession->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(ShareErrorsFromSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 62 
at StartSession->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37 
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 59 
at EncryptCookies->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(EncryptCookies), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44 
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) 
at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 
at Pipeline->then(object(Closure)) in Kernel.php line 122 
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 87 
at Kernel->handle(object(Request)) in index.php line 54 

這是.ENV配置文件:

APP_ENV=local 
APP_DEBUG=true 
APP_KEY=app_key_many_digits 

DB_HOST=remotehost 
DB_DATABASE=mydatabase 
DB_USERNAME=mysqlusername 
DB_PASSWORD=mysqlpassword 

CACHE_DRIVER=file 
SESSION_DRIVER=file 
QUEUE_DRIVER=sync 

MAIL_DRIVER=smtp 
MAIL_HOST=smtp.gmail.com 
MAIL_PORT=587 
[email protected] 
MAIL_PASSWORD=mypassword 
MAIL_ENCRYPTION=tls 

我不知道是否默認smtp在Centos-6上配置,否則我需要配置它,如果我那麼請請教我如何做到這一點。

回答

8

希望這可以幫助你,我花了很多時間在這個。

我的解決方案竟然是SELinux導致的問題。 這個工作對紅帽/ CentOS的6.

爲了允許HTTPD(即PHP),以使上

網絡套接字連接

setsebool -P httpd_can_network_connect爲了允許HTTPD(即PHP )發送郵件。

setsebool -P httpd_can_sendmail上

參考文獻:

RedHat page about Security Enhanced Linux

Sending email with Swift Mailer, GMail and PHP, Permission Denied Error

Instructions on how to enable sendmail (and mail) for local system.

+0

TKS的人,它的工作原理 –

+0

ŧ他真的很有幫助,非常感謝 – SubRed

相關問題