sendmail は、サーバー上からメールを送信するための仕組みです。 CGIメールフォームや一部のPHPプログラムでは、送信処理に sendmail を利用します。
メールフォームが送信できない場合は、sendmail のパス設定が正しくないことがあります。 このページでは、sendmail の基本と設定時の確認ポイントを分かりやすくご案内します。
この記事で分かること
sendmail は、サーバー上からメールを送信するためのプログラムです。 メールフォームや各種スクリプトが、入力された内容をメールとして送るときに利用されます。
一般的には、CGIメールフォームの設定ファイル内で sendmail のパスを指定して使用します。
メールフォームで使用する sendmail のパスは、以下をご指定ください。
/usr/sbin/sendmail
配布されている CGI やサンプル設定の中で別のパスが指定されている場合は、上記に合わせて修正してください。
CGIメールフォームでは、設定ファイル内に sendmail のパスを記述する形式が多く使われています。
/usr/sbin/sendmail
配布されているフォームによって記述方法は異なりますが、sendmail の呼び出し先として上記パスを設定する点は共通です。
| 項目 | 確認内容 |
|---|---|
| sendmail パス | /usr/sbin/sendmail になっているか |
| Perl パス | CGIファイル1行目が #!/usr/local/bin/perl になっているか |
| パーミッション | CGIファイルが 755 になっているか |
| 改行コード | LF になっているか |
| 設置場所 | public_html 配下の正しい場所にアップロードしているか |
配布されている CGI の初期設定では、sendmail のパスがサーバー環境と異なる場合があります。 そのまま設置すると送信できないことがありますので、設定内容をご確認ください。
CGIメールフォームでは、sendmail のパスだけでなく Perl のパス設定も重要です。 CGIファイルの1行目(shebang)は、以下のように設定してください。
#!/usr/local/bin/perl
メールフォームが送信できない場合は、以下の記事もあわせてご確認ください。
PHPをご利用の場合は、事前のお申し込みが必要です。
ご契約プランによりPHPをご利用いただけない場合、またはオプション契約が必要な場合があります。
PHPメールフォームの設置をご検討の場合は、事前にお問い合わせください。
Q. sendmail はメールソフトですか?
A. いいえ。sendmail はサーバー上でメールを送信するための仕組みであり、Outlook や Thunderbird のようなメールソフトではありません。
Q. sendmail のパスが違うとどうなりますか?
A. メールフォームから送信してもメールが送られず、正常に動作しない原因になります。
Q. sendmail だけ合っていれば動きますか?
A. sendmail のパスだけでなく、Perl のパス、パーミッション、改行コード、設置場所なども確認が必要です。
WISNET / わいずねっと のレンタルサーバー
用途に合わせて2つのレンタルサーバープランをご用意しています。