如何在heroku上部署的php应用程序上安装pear mail包?

时间:2012-11-27 04:13:13

标签: php heroku pear

我有一个部署在Heroku上的php应用程序。如何让PEAR邮件包适用于我的应用程序?我看到两个主要选择: 1)在heroku上安装pear mail包 2)在部署之前将软件包捆绑到我的应用程序

不幸的是,我更多的是铁杆人,所以不确定如何做这些(或哪一个是对的)。

谢谢, 安东尼

1 个答案:

答案 0 :(得分:3)

好吧,我终于弄明白了。这是我做的:

1.您需要使用自定义buildpack来安装pear packages mail和Net_SMTP。您可以通过运行以下命令来使用我创建的那个:

heroku config:add BUILDPACK_URL=https://github.com/antonyevans/heroku-buildpack-php.git

关键变化是增加了一行:

php/bin/pear install mail
php/bin/pear install Net_SMTP

进入bin / compile。

2.然后您需要告诉您的应用程序加载邮件包:

require_once 'Mail.php';

3.最后,heroku会阻止邮件端口,因此您需要配置为使用外部邮件服务器。例如,如果您添加了SendGrid插件('heroku addons:add sendgrid:starter'),那么您可以使用以下内容:

$wgSMTP = array(
    'host' => 'tls://smtp.sendgrid.net',
    'IDHost' => 'heroku.com',
    'port' => 587,
    'username' => getenv("SENDGRID_USERNAME"), 
    'password' => getenv("SENDGRID_PASSWORD"),
    'auth' => true
 );