使用PHP脚本进行SMTP身份验证而不使用第三方软件

时间:2014-04-22 15:58:39

标签: php email authentication smtp

我正在撰写一个网站,该网站会在特殊情况下自动为用户生成电子邮件(例如用户注册后的激活电子邮件)。问题是,需要SMTP身份验证,但网站将托管在未安装Pear Mail的Web托管服务上。我在互联网上看过很多文章,说要认证需要Pear Mail,PHPMailer或SwiftMailer。由于我没有权限安装它们,如果上述都不存在,我可以在PHP脚本级别做什么?

另一个问题是,如果Pear Mail,PHPMailer或SwiftMailer是一个PHP库,是否意味着我们可以通过编写自己的PHP代码来实际执行SMTP身份验证?

已添加:此链接(http://www.webdeveloper.com/forum/showthread.php?233847-A-Way-to-Send-SMTP-Mail-w-o-PEAR)似乎提供了解决方案,但是当我尝试时,没有任何反应(没有发送电子邮件)。它真的有效吗?

1 个答案:

答案 0 :(得分:0)

像PEAR Mail,PHPMailer的SwiftMailer这样的类都只是PHP脚本,与你自己的脚本没什么不同,所以如果你可以运行PHP,你可以安装和运行任何这些库而不需要任何特殊权限。您甚至不需要在主机上进行shell访问 - 运行pear安装程序,或者在您的开发机器上下载软件包,解压缩它,然后将PHP文件与您自己的脚本一起上传。您只需要确保您的包含路径适用于您选择放置它们的任何位置。

文档中描述的安装机制是可取的,因为您可以确定它将所有内容放在正确的位置,处理依赖项,版本等,但只要脚本可以被PHP读取和访问它就不会无论他们如何进入服务器。

如果您很幸运,您可以在您的shell帐户中运行pear installer,希望在您可以访问的地方安装pear packages。