ホームページ >バックエンド開発 >PHPの問題 >php から送信されたメールが受信できない場合はどうすればよいですか?

php から送信されたメールが受信できない場合はどうすればよいですか?

藏色散人
藏色散人オリジナル
2020-08-27 10:52:202881ブラウズ

php が電子メールを受信できない問題の解決策: 最初にコマンド「sudo apt-get install sendmail」を実行してインストールし、次にターミナルでコマンド「ps aux |grep sendmail」を入力して、新しいファイルを生成します。構成ファイル; 最後に、ターミナルで構成が成功したかどうかをテストします。

php から送信されたメールが受信できない場合はどうすればよいですか?

推奨: 「PHP ビデオ チュートリアル

php から送信されたメールが受信できない問題を解決するmail

phpメールを使って検証用にメールを送信したい人も多いと思いますが、スクリプトを書いて使い方が間違っているとメールを受信できません。ここでは、非常にシンプルで実用的な方法を見つけました。

ブロガーの開発環境は、ubuntu17.04 で構築された LNMP プラットフォームです:

メールを受信できないのはなぜですか? それは、関連する設定を何も行っていないためです。分かったので、次は私の手順に従ってください

まず、いくつかのソフトウェアをインストールする必要があります:

ubuntu の sendmail 関数を使用すると、非常に便利にメールを送信できます。ubuntu sendmail を使用するには、最初に 2 つのパッケージをインストールする必要があります

sudo apt-get install sendmail
sudo apt-get install sendmail-cf

注:

Ubuntu で最も一般的に使用されるメール機能を使用するには、次のパッケージが必要ですmailutils をインストールするには、

インストール コマンド: sudo apt-get install mailutils

添付ファイル付きの機能を使用する場合は、sharutils もインストールする必要があります。

インストール コマンド: sudo apt-get install sharutils; (yum install sharutils )

ターミナル入力コマンド: ps aux |grep sendmail

出力は次のとおりです:

root     20978  0.0  0.3   8300  1940 ?        Ss   06:34   0:00 sendmail: MTA: accepting connections
root     21711  0.0  0.1   3008   776 pts/0    S+   06:51   0:00 grep sendmail

sendmail が正常にインストールされ開始されたことを示します

インストール後、いくつかの関連構成を実行する必要があります

#sendmail はデフォルトでローカル ユーザーにのみ電子メールを送信します。インターネットは本物のメールサーバーになり得るのか。

sendmail 構成マクロ ファイルを開きます: /etc/mail/sendmail.mc

vi  /etc/mail/sendmail.mc

次の行を見つけます:

Code

DAEMON_OPTIONS(`Family=inet,  Name=MTA-v4, Port=smtp, Addr=127.0.0.1′)dnl

Modify Addr= 0.0 .0.0 は、任意のサーバーに接続できることを示します。

新しい構成ファイルを生成します:

Code

#cd /etc/mail
#mv sendmail.cf sendmail.cf~      //做一个备份
#m4 sendmail.mc > sendmail.cf   //>的左右有空格,提示错误没有安装sendmail-cf
$ sudo vim /etc/php5/apache2/php.ini

文「;sendmail_path」を見つけてコメント「;」を削除し、sendmail 起動ディレクトリを追加します

sendmail_path = /usr/sbin/sendmail -t -i

理論的には、ここからメールを送信できます。

最後に、ターミナルで設定が成功したかどうかをテストできます:

ターミナルで電子メールを送信する一般的な方法は次のとおりです:

1. 書き方一般的な電子メール: mail test@126.com Cc CC オブジェクトを編集します、件名: 電子メールの件名、Enter を入力し、電子メール本文の後に Ctrl-D を押して終了します

2. クイック送信方法: echo "電子メールbody" | mail -s Email subject test@126.com

3. ファイルの内容を電子メールの本文として送信します: mail -s test test@126.com < test.txt

4. 添付ファイル付きの電子メールを送信します: uuencode 添付ファイル名 添付ファイル 表示名 | mail -s メール件名の送信アドレス

例: uuencode test.txt test.txt | mail -s Test test@126.com

端末テストが成功すると、メール機能を使用してメールを送信できるようになります。

以上がphp から送信されたメールが受信できない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。