質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.05%

レンタルサーバー上でのメール送信のエラー

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 2,217

score 35

PEAR::Mailでメールを送信を試していて
うまく行ったのでレンタルサーバ(webcrowといいます)に上げてみたのですが
こちらの方ではエラーが出ます
PEAR::MailのエラーメッセージをgetMessageで取得してみたら以下のようになりました
なぜ、このレンタルサーバーでは動作してくれないのか、そして対策はあるのでしょうか?

emobile版
Failed to connect to mailserv.emobile.ne.jp:587 [SMTP: Failed to connect socket: fsockopen() has been disabled for security reasons (code: -1, response: )]

gmail版
Failed to connect to smtp.gmail.com:587 [SMTP: Failed to connect socket: fsockopen() has been disabled for security reasons (code: -1, response: )]


<?php
//PEAR::Mail読み込み
require_once("Mail.php");
require_once("Mail/mime.php");

//mail送信
    $to="hoge@yahoo.co.jp";
    $subject="アクセス確認しました";
    $message="あくせすがありましたよ!";

    //PEAR::Mailでの送信
    $show="PEAR::Mail";
/*
    //emobileメール利用のパターン
    $from="hoge@emobile.ne.jp";
    $para=array(
        "host"=>"mailserv.emobile.ne.jp",
        "port"=>587,
        "auth"=>true,
        "username"=>$from,
        "password"=>"hogeGmailPass"
    );
*/


    //gmail利用のパターン
    $from="hoge@gmail.com";
    $para=array(
        "host"=>"smtp.gmail.com",
        "port"=>587,
        "auth"=>true,
        "username"=>$from,
        "password"=>"hogeGmailPass"
        ,"debug"=>false
    );


    //Mailオブジェクト作製        
    $show="PEAR::Mail";
    $mailObject=Mail::Factory("smtp",$para);
    if( is_object($mailObject) ) {
        if( !(PEAR::isError($mailObject)) ){
            print "Mail::Factory完了<br>";

            //$headerにto,Cc,Bcc,From,Subjectが入る
            $header=array(    "To"=>$to,
                    "Cc"=>"",
                    "Bcc"=>"",
                    "From"=>$from,
                    "Subject"=>$subject
            );

            $result=$mailObject->send($to,$header,$message);
            print "mail::send完了<br>";
            if(PEAR::isError($result)){
                print $result->getMessage();
            }

        }else{
            print "mail::Factory失敗<br>";
            print $mailObject->getMessage();
        }
    }else{
        print "mailObject生成失敗<br>";
    }
?>
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

0

レンタルサーバ側のphp設定でopensslのextensionは有効になっていますか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/09/09 18:34

    extension_loadedでは確認できました

    キャンセル

  • 2015/09/09 18:41

    レンタルサーバがVPSでしたらSELinux設定が有効になっていないでしょうか?

    キャンセル

  • 2015/09/09 19:06

    VPSではありません。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.05%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る