簡體   English   中英

CakePHP Cake電子郵件SMTP Gmail

[英]CakePHP Cake Email SMTP Gmail

我無法使Cake Email正常工作。 我完全按照食譜( http://book.cakephp.org/2.0/en/core-utility-libraries/email.html “配置”部分)中的說明進行了所有設置。 當我在本地主機(xampp)上對其進行測試時,所有內容都可以正常運行,問題是,當我在Web服務器上上傳文件並嘗試執行它(發送電子郵件)時,我得到“網絡無法訪問”。 在我看來,服務器端可能存在一些問題,但是那可能是什么,以及如何解決該問題? 提前致謝。

編輯:我的代碼,按要求。

/app/Config/email.php

public $gmail = array(
    'host' => 'ssl://smtp.gmail.com',
    'port' => 465,
    'username' => 'wykresl***14@gmail.com',
    'password' => '***********',
    'transport' => 'Smtp',
    'timeout' => '30'
);

在控制器中

 public function test()
{
    App::uses('CakeEmail', 'Network/Email');
    $Email = new CakeEmail('gmail');
    $Email->from(array('wykreslanka.2014@gmail.com' => 'Wykreślanka 2014'));
    $Email->to('si***1@gmail.com');
    $Email->subject('test');
    $Email->template('newsletter');
    $Email->emailFormat('html');
    $Email->viewVars(array('post_id'=>0,'post_title'=>'Tytuł','post_body'=>'Body','quote_is'=>false));
    $Email->send();
    $this->Session->setFlash('Poszło','success');
    return $this->redirect(array('action' => 'all'));
}

通常,大多數Web托管服務出於某些我仍試圖理解的原因會阻止外部SMTP連接。 我知道的一種這樣的虛擬主機是JustHost。

他們希望您使用他們的本地smtp服務器...我建議您與您的虛擬主機服務聯系,我100%確信他們的事情與您的代碼無關。

我的虛擬主機拒絕聽,所以我使用的最好的替代方法是MailGun http://www.mailgun.com/。這使您可以使用他們提供的php-api發送電子郵件。 但是,您將無法使用自己的Gmail地址。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM