如何使用带有Google App Engine的自定义域(https)的Sendgrid发送电子邮件

时间:2015-11-01 06:26:20

标签: php codeigniter google-app-engine

我在Google App Engine上托管了一个用Codeigniter(PHP)编写的网络应用程序。我使用sendgrid发送交易电子邮件。

该应用最初是在https://appid.appspot.com上托管的,一切都很好。

我最近将应用网址更改为https://app.domain.com并导入了我从godaddy购买的SSL证书。就ssl证书而言,我没有任何问题。

但是,在发送交易电子邮件时,我收到以下错误。

area

sendgrid凭据与我在https://app.appspot.com托管的其他应用程序中使用相同凭据的情况相同,一切都很好。问题出在我的自定义网址https。

发送电子邮件的代码

Severity: Warning

Message: fsockopen(): php_network_getaddresses: gethostbyname failed. errno=0

Filename: libraries/Email.php

Line Number: 1949

Backtrace:

File: /base/data/home/apps/s~chutti-app-prod/1.388253899009796980/application/controllers/Signup.php
Line: 60
Function: send

File: /base/data/home/apps/s~chutti-app-prod/1.388253899009796980/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: fsockopen(): unable to connect to smtp.sendgrid.net:587 (php_network_getaddresses: gethostbyname failed. errno=0)

Filename: libraries/Email.php

Line Number: 1949

Backtrace:

File: /base/data/home/apps/s~chutti-app-prod/1.388254166863409817/application/controllers/Signup.php
Line: 60
Function: send

File: /base/data/home/apps/s~chutti-app-prod/1.388254166863409817/index.php
Line: 292
Function: require_once

如果有人能帮我理解究竟是什么问题,那就太好了。

1 个答案:

答案 0 :(得分:1)

教程链接适用于Google Compute Engine。默认情况下,App Engine PHP环境以您无法打开任意连接的模式运行。

但是,请查看本指南: https://cloud.google.com/appengine/docs/php/mail/sendgrid