PHP のメール機能を使用して電子メールを送信するときに電子メールが受信できない問題の解決策: まず、sendmail および sendmail-cf パッケージをインストールし、次に sendmail.mc 構成ファイルを編集して、関連する構成を変更します。新しい構成ファイルを生成し、ターミナルでテストするだけです。

#この記事の動作環境: ubuntu 17.04 システム、php 7.3、thinkpad t480 コンピューター。
原因分析:
メールを受信できない理由は、関連する設定が不足している可能性があります。
具体的な手順を見てみましょう。
まず第一に、いくつかのソフトウェアをインストールする必要があります:
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
ログイン後にコピー
次の行を見つけます:
DAEMON_OPTIONS(`Family=inet, Name=MTA- v4 , Port=smtp, Addr=127.0.0.1')dnl
Addr=0.0.0.0 を変更して、任意のサーバーに接続できることを示します。
新しい構成ファイルを生成します:
#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
理論的には、ここで電子メールを送信できます。
最後に、ターミナルで設定が成功したかどうかをテストできます:
ターミナルで電子メールを送信する一般的な方法は次のとおりです:
一般的なメールの書き方電子メール: mail test@126.com Cc 編集済みコピー 送信オブジェクト、件名: 電子メールの件名、Enter を入力、電子メール本文の後に Ctrl-D を押して終了します
クイック送信方法: echo "電子メール本文" | mail -s 電子メールの件名 test@126.com
ファイルの内容を電子メールの本文として送信します: mail -s test test@126.com < test.txt
電子メールを送信添付ファイル付き: uuencode 添付ファイル名 添付ファイルの表示名 | mail - s 電子メールの件名 送信アドレス
関連する推奨事項:
php ビデオ チュートリアル
以上がphpのメール機能を使ってメールを送信しても受信できない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。