在本地 XAMPP 服务器中使用 CodeIgniter 发送电子邮件

Posted

技术标签:

【中文标题】在本地 XAMPP 服务器中使用 CodeIgniter 发送电子邮件【英文标题】:Sending emails with CodeIgniter in a local XAMPP server 【发布时间】:2011-03-05 09:06:37 【问题描述】:

我正在尝试通过 localhost(XAMPP Windows 1.7.3 安装)发送电子邮件,但我已经尝试了几个小时没有成功。

这是我尝试的最后一个代码:

$config = Array(
      'protocol' => 'smtp',
      'smtp_host' => 'ssl://smtp.gmail.com',
      'smtp_port' => 465,
      'smtp_user' => 'mygoogleappsuser@mydomain.com',
      'smtp_pass' => 'mypassword',
    );


    $this->load->library('email', $config);
    $this->email->set_newline("\r\n");

    $this->email->from('mygoogleappsuser@mydomain.com', 'My Name');
    $this->email->to('recepient@example.com');


    $this->email->subject('Email Test');
    $this->email->message('Testing the email class.');

     if($this->email->send())
     
     echo 'Your email was sent.';
     
     else
     
     show_error($this->email->print_debugger());
     

每当我尝试加载此页面时,页面都会显示它正在加载,但没有任何反应。我需要在我的服务器中设置什么来确保电子邮件传递吗?

我弄乱了 php.ini 和 sendmail 的配置,但没有运气。并且在重要的情况下,openSSL 不可用。

知道有什么问题吗?

【问题讨论】:

【参考方案1】:

确保在您的 php.ini 中启用了 php_openssl.dll 和 php_smtp.dll(您安装的 apache/bin/ 文件夹中的那个)。

为什么opensll 不可用?

【讨论】:

真的不知道。我试图手动添加行来加载它们,但它给了我一个错误,它找不到库。我下载了 OpenSSL,但我不知道如何在我的 XAMPP 安装中安装它。有什么想法吗? 添加之后是否重新启动 apache 以重新加载配置?并确保 libeay32.dll 和 ssleay32.dll 在 apache/bin 中? 好的,现在看来它可能已经工作了(添加 SSL)。但是仍然尝试使用上述代码发送电子邮件没有响应。该页面似乎永远在加载。 smtp_user 应该是您的 gmail 用户名 smtp_pass 应该是您的 gmail 密码。我刚刚使用我的 gmail 地址在我的 xampp 安装中测试了这段代码,它运行良好。 好的,所以我发现 SSL 已启用,但代码仍然根本无法加载。浏览器显示“正在加载”但没有响应。

以上是关于在本地 XAMPP 服务器中使用 CodeIgniter 发送电子邮件的主要内容,如果未能解决你的问题,请参考以下文章

[PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(一.安装XAMPP)

XAMPP本地安装文件路径问题

使用 XAMPP 将 android 连接到本地服务器

.htaccess 无法使用 XAMPP 在本地主机上工作

CSS 样式在本地 xampp 服务器中不起作用

在本地 xampp/apache 服务器上设置 SSL