2013-02-12 75 views
0

我有人建立了一個使用PHP和Codeigniter框架的網站。在測試服務器上一切工作正常,但現在,一旦該網站在Justhost上傳輸,電子郵件功能不起作用。我沒有使用正確的SMTP設置,但他們沒事(支持看看)。Codeigniter電子郵件功能和Justhost SMTP

基本上,業主可以把他的財產放在網站上(如:http://goo.gl/AZcrj),當訪客填寫底部的聯繫表時,電子郵件會發送給所有者的電子郵件地址,他可以回覆訪問者的電子郵件。

我第一次使用Justhost SMTP設置並測試它,發送了電子郵件。但從那時起,直到現在,當我嘗試通過聯繫表單發送郵件時,我總是收到錯誤。我甚至嘗試過使用Gmail SMTP設置,同樣的事情發生:\

這裏是代碼,有沒有人有任何線索? 順便說一句,我是一個PHP的新秀,所以我不知道不多,但我盡我所能去解釋

public function send_mail($res) 
{ 
    $this->load->library('email'); 
    $config['protocol'] = 'smtp'; 
    $config['smtp_host'] = 'sslsmtp.gmail.com'; --- i tried with ssl://smtp.gmail.com, same thing happens 
    $config['smtp_port'] = '465'; 
    $config['smtp_timeout'] = '7'; 
    $config['smtp_user'] = 'email'; 
    $config['smtp_pass'] = 'password'; 


    $this->email->initialize($config); 

    $this->email->from($res['sender_email'], $res['sender_name']); 
    $this->email->to($res['reciever']); 
    $this->email->reply_to($res['sender_email'], $res['sender_name']); 

    $this->email->subject('Email from site.'); 
    $this->email->message($res['message']); 

    if($this->email->send()) { 
     return true; 
    } else { 
     return false; 
    } 
    //configure mail agent... 
} 

回答

2

看來Justhost的塊共享IP地址的輸出端口。我遇到同樣的問題,並在搜索答案時遇到此鏈接(https://my.justhost.com/cgi/help/405)。

從上面的鏈接:

傳出端口被封鎖

只是主機限制端口訪問的共享主機 環境的結果。在此環境中,服務器上的每個帳戶共享一個 單個IP地址。因此,大多數端口都被阻止,因爲沒有 單個帳戶分配了該框的IP地址。

要訪問這些端口,有必要通過Just Host租用一個專用IP地址 地址。

+1

雖然鏈接可能回答問題,但還需要在此處添加答案的基本部分。如果鏈接頁面變爲非活動狀態,則僅鏈接答案將失效。 – Harry 2013-12-03 12:11:55

+1

我已經更新了答案,謝謝你指出。 – Corey 2013-12-05 16:51:43