2016-06-22 5 views
0

私のサーバーの速度をチェックするための小さなコードを書いています。実行を終了するのに約60秒かかります。php mail()関数がcentos6サーバーで実行するのに時間がかかりすぎる

<?php 


    $start=time(); 

    $to = "[email protected]"; 

    $subject = "This is subject"; 

    $message = "<b>This is HTML message.</b>"; 
    $message .= "<h1>This is headline.</h1>"; 

    $header = "From:[email protected] \r\n"; 
    $header .= "MIME-Version: 1.0\r\n"; 
    $header .= "Content-type: text/html\r\n"; 

    $retval = mail ($to,$subject,$message,$header); 

    if($retval == true) { 
     echo "Message sent successfully..."; 
    }else { 
     echo "Message could not be sent..."; 
    } 

    $after=time(); 
    $total=$after-$start; 
    echo "</br>"; 
    echo "Total execution time : ".$total." seconds"; 
?> 

何故ですか?実行時間をどのように改善できますか? 私はすでにphp.iniファイルのメモリ制限を増やしました。

+0

それは完全に実行されていますか?あなたは電子メールを受け取りますか?あなたのログを確認できますか、ファイアウォールがブロックされている可能性があります。DNSエラーまたはApacheログの使用可能なメッセージです。 – Dom

+0

@Dom:サーバー内のsendmailサービスに問題がありました。私はpostfixをインストールしました。それはsendmailで60秒でした。今はちょうど1秒です。 –

+0

なぜスクリプトが長い時間を要するかを理解する最良の方法は、プロファイリングを使用するかスクリプトにログインすることです。これは電子メールやLinuxの質問ではなく、プログラミングに関する質問です。 –

答えて

0

sendmail mailserverに問題がありました。 postfix mailserverをインストールすることで問題は解決しました。

関連する問題