2016-11-27 18 views
1

これは私が知っているちょっとした初心者の質問です。しかし、私はこの質問への答えを見つけることができませんでした。電子メールサービスの冗長性

私は、自動化の機能を活用するいくつかのウェブサイトを作っています。私はPHPを使ってこのウェブサイトを作った。私がやっているすべてのウェブサイトでは、私は、いくつかの「冗長性」を抱えています。 PHPMailerライブラリーの例から、私は例をあげてみよう。これらの二つの文で

$mail = new PHPMailer; 

    $mail->isSMTP(); 
    $mail->Host = 'mail.domail.com'; 
    $mail->SMTPAuth = true; 
    $mail->Username = '[email protected]';     // SMTP username 
    $mail->Password = 'secret';      
    $mail->Port = 587; 

    $mail->setFrom('[email protected]', 'Mailer'); 
    $mail->addAddress('[email protected]', 'Joe User');  // Add a recipient 
    $mail->isHTML(true); 

    $mail->Subject = 'Here is the subject'; 
    $mail->Body = 'This is the HTML message body <b>in bold!</b>'; 
    $mail->AltBody = 'This is the body in plain text for non-HTML mail clients'; 

、私は冗長性があると思ったところである:$mail->Username = "[email protected]; $mail->Password = 'secret';"$mail->setFrom('[email protected]')が。ここに私の質問はありますか?私がすでにユーザー名とパスワードを与えている場合、なぜ "差出人"アドレスを提供する必要がありますか?それは単に私の電子メールアカウントにログインして送信しただけではありませんか?ユーザー名を入力すると、「送信元」アドレスも入力するのはなぜですか?およびその逆。

誰かがこのようなシステムがこのように機能する理由を説明できますか?私はalsonにpythonの標準のmaillingライブラリと同様の構造を見ました。

+0

ユーザー名とパスワードは、メールサーバーの認証に使用される資格情報です。 Fromはメールの作成に使用されます。 1つの明確な質問を策定してください。 –

答えて

0

「from」はログインユーザー名と同じである必要はないため、別の値を持つメッセージを自分宛に送信し、受信トレイまたはスパムフォルダを確認して結果を確認することができます。

0

正しいアクセス許可が適用されている場合、Microsoft Exchangeサーバー(例のみ)では、メールボックスログインの下でSend As多くのユーザーメールボックスを使用できます。この場合、PHPMailerを使用してMicrosoft Exchangeサーバーにメールを送信し、認証する場合、同じ資格情報を使用してメールボックスにアクセスし、From変数のように送信するメールボックスを指定します。

と同様に上記のように、From現在SMTP規格(RFC 821)の一部であり、SMTPサーバとの通信時MUSTを使用することが。したがって、SMTPを使用するすべてのメールサーバーは、誰が電子メールを送信しているかを理解しているにもかかわらず、Fromフィールドがこの標準を満たすように要求する必要があります。

関連する問題