ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して電子メールを送信する際のヘルプを求める、プロキシ サーバーを通過する方法
自宅で使えるメール送信機能を書きました。
ただし、会社はイントラネットなので、インターネットにアクセスするにはプロキシ サーバーを設定する必要があります。プロキシ サーバーを介して送信するにはどうすればよいですか?
コードを教えていただければ幸いです、ありがとうございます。
必ず結んでください!
以下は私の現在のコードです。
class Jmail
{
public $Username; // 郵便局のユーザー名
public $Password; // 送信者の名前
public $From; ; //受信者アドレス
public $Ttile ; //メールタイトル
public $Content; //メールサーバー
function Send(){
$Jmail = new com(" "); // Jmail オブジェクトをインスタンス化します
$Jmail->SiLent=true; // True に設定すると、Jmail はエラーを表示せず、True と False のみを返します
$Jmail->LogGing = false; / /ログを有効にするかどうか
$Jmail->CharSet = "GB2312"; //文字列エンコードを設定します
$Jmail->ContentType = "Text/html"; //メールの形式はHTML形式です
$ Jmail->MailServerUsername = $this->Username; //送信メールボックスのユーザー名
$Jmail->MailServerPassword = $this->Password; //送信メールボックスのパスワード
$Jmail->FromName = $this -> ;FromName; //送信者の名前
$Jmail->From = $this->From; //送信者のアドレス
$Jmail->AddRecipient($this->Addrecipient) //受信者のアドレス
$Jmail- >Subject = $this->Title; //メールのタイトル
$Jmail->Body = $this->Content; //メールの本文
$JmailError = $Jmail->Send($this-> Smtp); //Smtp サーバー
if($JmailError){ //メールが正常に送信されたかどうかを判断します
return true;
return false; ;
$jmail->ユーザー名 = "私のメールアドレス";
$jmail->FromName = "私のメールアドレス";名前";
$jmail->Addrecipient = "アドレス";
$jmail->タイトル = "ttt";
$jmail->Content = "cccc";
$ jmail->Smtp = "メールサーバーアドレス";
if($jmail->Send()){
echo "成功!";
}else{
echo "失敗!";
}
?> ;
ディスカッションに返信 (解決策)
smtp 経由で送信するだけです。 QQ メール アドレスを使用するだけです。
問題は、イントラネット IP を SMTP サーバーに送信する方法です。外部 IP を呼び出すことができれば、送信できます。
プロキシ サーバーで電子メール プロキシが有効になっていますか?
これは次のとおりです ここのコンピュータはすべて内部 IP を持っており、外部 IP を介して外部ネットワークにアクセスする必要があり、メール サーバーは外部ネットワーク上にあります。
私の理解に問題があるかわかりませんが、アドバイスをお願いします。 。 。一生懸命勉強します。
送信時にブロックされますか
以上です
ここのコンピューターはすべて内部 IP を持っており、外部 IP を介して外部ネットワークにアクセスする必要があり、その後、メール サーバーが外部ネットワークにインストールされます。 したがって、電子メールを正常に送信するには、外部 IP に接続する必要があると理解しています。このように表現しても皆さんに理解していただけるかわかりません。 内部ネットワークがルーターを介して外部ネットワークに接続されている場合は、プロキシ サーバーを介して外部ネットワークに接続されている場合は、プロキシ サーバーのメール プロキシ機能を有効にする必要があります (デフォルトは閉じられています)。 )
わかりました、ありがとう、確認してみます