首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >smtp、phpinfo、sendmail

smtp、phpinfo、sendmail
EN

Stack Overflow用户
提问于 2012-09-25 03:18:14
回答 2查看 2.9K关注 0票数 1

我正在尝试使用PHPmailer发送电子邮件,但是当我在php.ini中更改SMTP服务器时,它在phpinfo中没有更新-它仍然显示本地主机。我假设这就是我得到错误SMTP Error: Could not connect to SMTP host的原因。

你能帮我找出错误和可能的原因,为什么我不能改变SMTP服务器,即使我可以改变smtp_port

我已经尝试过在邮件服务器上这样做,而且我在安装pear时也遇到了很多问题,所以我只想让它正常工作。我尝试过smtp.mail.yahoo.comsmtp.gmail.com和我们自己的邮件服务器,但它仍然显示为本地主机。每次进行更改时,我都会重新启动

这是我诊断问题的第三天,因为我发送了一封简单的电子邮件(我发现在asp.net中发送邮件要容易得多)。如果您需要进一步的信息,请让我知道。提前谢谢你。

EN

回答 2

Stack Overflow用户

发布于 2012-09-25 03:39:58

这可能是一个愚蠢的问题,但是你使用的是正确的php.ini文件吗?-在许多安装中可能有不止一个。我总是仔细检查我正在更改的php.ini文件是不是在phpinfo()中引用的文件。

票数 1
EN

Stack Overflow用户

发布于 2012-09-26 02:45:21

考虑到这一点,我使用的是phpmailer,但没有在php.ini中设置smtp服务器。相反,我创建了一个扩展phpmailer的新类,并在其中指定了我的SMTP设置,如下所示。

这允许我为多个站点配置SMTP设置,而不需要接触php.ini或标准的phpmailer文件。

代码语言:javascript
复制
<?php
require_once('initialise.inc.php');  // Initialising constants including LIB_PATH & DS
require_once(LIB_PATH.DS."phpmailer".DS."class.phpmailer.php");
require_once(LIB_PATH.DS."phpmailer".DS."class.smtp.php");

class my_phpmailer extends phpmailer {

    public $From = "me@example.com"; // Email Address
    public $FromName = "My Name"; // Name
    public $Host = "mailserver.example.com";
    public $Mailer = "smtp";
    public $WordWrap = 75;
    public $Username = "***************"; // SMTP account username
    public $Password = "********"; // SMTP account password


    function __construct() {
    }

    public function __toString() {
    return $this;
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12571392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档