【发布时间】:2011-08-02 10:17:48
【问题描述】:
我知道已经有很多关于 smtp、1and1 托管和 Zend Framework 的问题。我已经阅读了几个小时,但仍然一无所获(也许我忽略了最重要的一个?)。那么让我们进入正题:
-
我一遍又一遍地 同样的错误“消息:连接 拒绝“,不管我是什么 smtp 试图使用。我知道像 gmail 这样的外部服务器可能存在问题(我也尝试过),但是 1and1 smpt...
-
我使用的是相当普通的配置:
email.configTransport.auth = "登录" email.configTransport.username = "my@mail.com" email.configTransport.password = "密码" email.configTransport.host = "smtp.1and1.pl"
然后在引导程序中我设置默认传输:
protected function _initDefaultEmailTransport(){
$configTransport = $this->getOption('email');
$tr = new Zend_Mail_Transport_Smtp($configTransport['configTransport']['host'],
$configTransport['configTransport']);
Zend_Mail::setDefaultTransport($tr);
}
- 它最有趣的地方是什么 我的本地主机(也通过 Thunderbird)。所以我猜配置没问题,并且 smtp 服务器可以正常工作。
- 我一直在尝试使用端口 25 和 587。 同样的问题。 如果我为错误的密码更改密码,我会再次收到相同的错误,所以看起来我在连接阶段遇到了问题,不是吗?
如果有任何可能出错的想法,我将不胜感激。
我没有看到可以覆盖它的地方。除此之外,我尝试了生产和开发配置。 OpenSSL 肯定是启用的,我已经检查过了。这是我的配置文件。
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0
resources.layout.layoutpath = APPLICATION_PATH "/layouts/scripts/"
autoloaderNamespaces[] = "Doctrine"
doctrine.dsn = "mysql://...."
doctrine.data_fixtures_path = APPLICATION_PATH "/../doctrine/data/fixtures"
doctrine.models_path = APPLICATION_PATH "/models"
doctrine.migrations_path = APPLICATION_PATH "/../doctrine/migrations"
doctrine.sql_path = APPLICATION_PATH "/../doctrine/data/sql"
doctrine.yaml_schema_path = APPLICATION_PATH "/../doctrine/schema"
doctrine.generate_models_options.pearStyle = true
doctrine.generate_models_options.generateTableClasses = true
doctrine.generate_models_options.generateBaseClasses = true
doctrine.generate_models_options.baseClassPrefix = "Base_"
doctrine.generate_models_options.baseClassesDirectory =
doctrine.generate_models_options.classPrefixFiles = false
doctrine.generate_models_options.classPrefix = "Application_Model_"
resources.mail.transport.type = "smtp"
resources.mail.transport.host = "smtp.gmail.com"
resources.mail.transport.auth = "login"
resources.mail.transport.ssl = "tls"
resources.mail.transport.username = "username"
resources.mail.transport.password = "pass"
resources.mail.transport.register = true
autoloaderNamespaces[] = "ZC"
[staging : production]
[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
resources.frontController.params.displayExceptions = 1
这是完整的错误信息:
Stack trace:
#0 /homepages/46/d339149978/htdocs/library/Zend/Mail/Protocol/Smtp.php(167): Zend_Mail_Protocol_Abstract->_connect('tcp://smtp.gmai...')
#1 /homepages/46/d339149978/htdocs/library/Zend/Mail/Transport/Smtp.php(199): Zend_Mail_Protocol_Smtp->connect()
#2 /homepages/46/d339149978/htdocs/library/Zend/Mail/Transport/Abstract.php(348): Zend_Mail_Transport_Smtp->_sendMail()
#3 /homepages/46/d339149978/htdocs/library/Zend/Mail.php(1178): Zend_Mail_Transport_Abstract->send(Object(Zend_Mail))
#4 /homepages/46/d339149978/htdocs/application/controllers/ContactController.php(97): Zend_Mail->send()
#5 /homepages/46/d339149978/htdocs/application/controllers/ContactController.php(74): ContactController->sendContactMail(Array)
#6 /homepages/46/d339149978/htdocs/library/Zend/Controller/Action.php(513): ContactController->sendAction()
#7 /homepages/46/d339149978/htdocs/library/Zend/Controller/Dispatcher/Standard.php(295): Zend_Controller_Action->dispatch('sendAction')
#8 /homepages/46/d339149978/htdocs/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#9 /homepages/46/d339149978/htdocs/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
#10 /homepages/46/d339149978/htdocs/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#11 /homepages/46/d339149978/htdocs/public/index.php(27): Zend_Application->run()
#12 {main}
周日我向 1and1 发送了一封电子邮件,询问通过 SMTP 发送电子邮件是否有任何问题。今天收到回复说一切正常,我必须检查我的脚本...
【问题讨论】:
标签: php zend-framework email smtp