とりあえず、動作するようにしてみましょう。ここでは、同梱されているフォーム HTMLや、事前に設定されている設置内容をもとに、必要最低限の設定をご案内します。以下の順に従って、CGI を動作させて下さい。

  1. Perl のパス設定
  2. サーバへアップロード
  3. 完了画面HTMLの準備
  4. CGI の設定
  5. フォーム HTML の編集
  6. 動作確認
  7. トラブルシューティング

本CGIは、Perlスクリプトで作られております。CGIファイルの1行目に、ご利用のサーバにインストールされているPerl本体のパスを記述してあげなければいけません。テキストエディターを使ってmpmail.cgi を開いて下さい。1 行目には、#!/usr/bin/perl と書かれているはずです。この行を、ご利用のサーバの環境に合わせて書き換えて下さい。ほとんどのサーバでは、書き換える必要は無いはずですが、一部のサーバでは、異なるPerlのパスになっている場合があります。ご利用のサーバのPerlのパスが分からない場合には、事前に、ご利用のサーバ事業者にお問い合わせ下さい。

top へ戻る

フォルダー mpmail をそのままサーバへアップロードしてください。ただし、転送モードとパーミッションには注意してください。転送モードはすべて ASCII モードです。サーバにアップロードしたら、下表の通りにフォルダーやファイルのパーミッション(属性)を適切に変更して下さい。

ファイル・フォルダー名  転送モード   属性1  属性2 用途
 mpmail/
変更不要 707
 mpmail.cgi
[ASCII] 704 705 CGIファイル
 form.html
[ASCII] 変更不要 変更不要 フォームHTMLサンプル
 logs/
[ASCII] 変更不要 707 ログ格納フォルダー
 attachment/
[ASCII] 変更不要 707 添付ファイル作業用フォルダー
 lib/
[ASCII] 変更不要 変更不要 各種Perlライブラリー格納フォルダー
 conf/
[ASCII] 変更不要 変更不要 設定ファイル格納フォルダー
 config.cgi
[ASCII] 変更不要 変更不要 設定ファイル
 template
[ASCII] 変更不要 変更不要 各種テンプレート格納フォルダー
 mail.txt
[ASCII] 変更不要 変更不要 メール本文テンプレート
 reply.txt
[ASCII] 変更不要 変更不要 自動返信メール本文テンプレート
 confirm.html
[ASCII] 変更不要 変更不要 確認画面HTMLテンプレート
 error.html
[ASCII] 変更不要 変更不要 エラー画面HTMLテンプレート

■ 転送先

フォルダー mpmail を、転送モードに注意して、ご利用のサーバにあわせて適切な場所にアップロードしてください。

■ 属性(パーミッション)

上表に記載されているパーミッションは、あくまでも例です。お使いのプロバイダー、ホスティングサービス事業者の指示に従ってください。

上表では、属性(パーミッション)を2種類掲載しております。CGIが所有者(オーナー)権限で実行されるサーバをおいの場合には、属性1の設定を使ってください。CGI がohter権限(所有者とは別の権限)で実行されるサーバをお使いの場合には、属性2の設定を使ってください。

CGI が所有者(オーナー)権限で実行されるか、other権限で実行されるかは、お使いのレンタルサーバ事業者に確認してください。おおむね、CGIファイルの属性(パーミッション)が704でも動作する場合には、所有者(オーナー)権限で実行されると考えても結構です。CGIファイルの属性(パーミッション)が705もしくは707でないと動作しない場合には、other権限で実行されているとお考えください。

「変更不要」と指定しているファイルは、サーバにアップロードするだけで OK です。あえてパーミッションを変更しないでください。

top へ戻る

MP Form Mail CGI Standard版は、フォームから投稿が完了すると、設定で指定されたページへリダイレクトします。そのリダイレクト先となるページを事前に用意しておいて頂く必要があります。投稿してくれたことに対する謝辞や、各種ご案内を掲載したページにするのが良いでしょう。この完了画面を作成していただき、サーバにアップロードしてください。アップロードする場所は、通常のHTMLファイルが画像ファイルを設置するところであれば、どこでも構いません。

もしこのリダイレクト先URLが存在しないと、フォームから投稿した後、エラーとなってしまいますので、必ず、ご用意下さい。

top へ戻る

mpmail フォルダー内に、config フォルダーがあります。この中に config.cgi がありますが、これが CGI の設定ファイルです。config.cgi をテキストエディターで開いてください。すべて設定は、このファイルで指定します。ここではとりあえず動かしてみるだけですので、最小限の設定をご案内します。

▼ メール送信先アドレスの設定

フォームから送信されたメールを受け取るメールアドレスの指定です。あなたのメールアドレスを指定して下さい。

#--------------------------------------------------------------------
#■メール送信先アドレスの設定
# フォームから送信されたメールを受信するメールアドレスを指定して下さ
# い。フォームから送られたメールは、ここで指定するメールアドレスに届
# きます。
#
# 【設定例】
# $c{'MAILTO'} = 'info@futomi.com';
#
# もし複数のアドレスを指定したい場合は、それぞれのメールアドレスを半
# 角カンマで区切ってください。
#
# 【設定例】
# $c{'MAILTO'} = 'taro@futomi.com,jiro@futomi.com';
#--------------------------------------------------------------------
$c{'MAILTO'} = '';

▼ リダイレクト先 URL

先ほど準備したリダイレクト先ページ(完了画面)のURLを指定して下さい。必ず、http:// から指定して下さい。

#--------------------------------------------------------------------
#■リダイレクト先URL
# フォームから送信した後に表示されるページのURLを指定します。主に、
# 完了画面となるようなページを事前に用意していただき、そのURLをここ
# に指定してください。実在しないページURLを指定すると、フォームから
# 投稿後、エラーとなってしまいますので、注意してください。
# この設定は、必ず、http:// から指定して下さい。
#
# 【設定例】
# $c{'REDIRECT_URL'} = 'http://www.futomi.com/other/thanx.html';
#--------------------------------------------------------------------
$c{'REDIRECT_URL'} = '';

▼ 自動返信メール用送信元メールアドレス

自動返信メールの差出人のメールアドレスの指定です。あなたのメールアドレスを指定して下さい。

#--------------------------------------------------------------------
#■自動返信メール用送信元メールアドレス
# 自動返信メールの差出人となるメールアドレスの設定です。主に、あなた
# のメールアドレスを設定することとなります。自動返信メールを受信した
# 人が返信する際の宛先になりますので、必ず受信可能なメールアドレスを
# 間違いのないよう指定してください。
#
# 【設定例】
# $c{'FROM_ADDR_FOR_REPLY'} = 'taro@futomi.com';
#
# この設定は自動返信メールを送信する場合に必須の項目です。自動返信メ
# ールを送信しない場合には、設定する必要はありません。
#--------------------------------------------------------------------
$c{'FROM_ADDR_FOR_REPLY'} = '';

config.cgi の編集が終わったら、再度、FTPでサーバに上書きでアップロードしてください。必ず、お使いのFTPソフトにて、ASCII(テキスト)モードを明示的に指定した上で、転送してください。BINARYモードや転送モード自動認識機能を使うと、正しく動作しませんので、ご注意下さい。

top へ戻る

 フォーム HTML を用意します。同梱の form.html をテキストエディターで開いて下さい。form.html は、mpmailフォルダーの直下にあります。

<form action="mpmail.cgi" method="post" enctype="multipart/form-data">

この記述の mpmail.cgi の部分を、サーバに設置した mpmail.cgi の URL に書き換えてください。

form タグ内には、必ず、enctype="multipart/form-data" を加えてください。これがないと、添付ファイルを送ることができません。添付ファイルが不要の場合には、enctype 属性は不要です。

以上でフォーム HTML の準備は完了です。form.html をサーバにアップロードして下さい。アップロードする場所は、通常の HTML ファイルを設置する場所であれば、どこでも構いません。

top へ戻る

サーバへアップロードした「form.html」に、ブラウザーでアクセスしてみてください。下図のフォームサンプル画面が表示されます。

サンプルフォーム

各項目に必要事項を記入して、「次へ」ボタンを押してください。下図の確認画面が表示されるはずです。ただし、ファイルを添付した場合には、確認画面が表示されません。

最後に「送信」ボタンを押すと、先ほど事前に用意した完了画面が表示されます。そして、設定ファイル config.cgi で設定したメール送信先アドレスに、通知メールが届きます。さらに、フォームで入力したメールアドレス宛には、自動返信メールが届くはずです。

再度、フォーム(form.html)にアクセスして、今度は、何かファイルを添付して送信してみてください。確認画面は表示されませんが、完了画面が表示されるはずです。そして、設定ファイル config.cgi で設定したメール送信先アドレスに、ファイルが添付された通知メールが届きます。

以上で CGI の動作確認が完了いたしました。これまではとりあえず CGI が動作するかどうかを確認しただけですので、改めて、貴サイトにあわせて、本番環境の準備を行ってください。

もし正常に動作しなかった場合には、下記のトラブルシューティングの欄をご覧ください。

top へ戻る

前述の動作確認で、正常に動作しなかった場合には、以下のポイントを再度確認してください。

▼ フォームHTMLに必要事項を記入し、「次へ」ボタンを押したら、404 Not Found と表示された。

もしファイルを添付していないにも関わらず、この現象が発生したら、フォームHTMLのform.htmlに記述したformタグのaction属性値が間違っていると思われます。action属性値には、mpmail.cgiの正しいURLを指定しなければいけません。再度、「■フォームHTMLの編集」欄をご覧下さい。

ファイルを添付した場合には、もう一つの原因も考えられます。それは完了画面のURLの設定ミスです。事前に完了画面のHTMLをご準備頂き、サーバにアップロードしていただいているはずですが、そのURLが、設定ファイル mpmail/conf/config.cgi で設定したリダイレクト先URLと異なっていると思われます。再度、設定ファイル mpmail/conf/config.cgi を確認して、正しいリダイレクト先URLを設定してください。

▼ フォームHTMLに必要事項を記入し、「次へ」ボタンを押したら、500 Internal Server Error と表示された。

CGIの設定が正しく行われなかったこと意味します。再度、「■Perlのパス設定」および「■サーバへアップロード」欄をご覧頂き、間違いがないかをご確認ください。特に、FTPの転送モード、パーミッションには気をつけてください。

▼ 完了画面まで表示されたが、メールが届かない

まずは、ご利用のサーバにて、sendmailがインストールされているかを、サーバ事業者にお問い合わせ下さい。sendmailがインストールされていたとしても、サーバ事業者によっては、メール送信を許可していない場合もあります。この点に関してもあわせてサーバ事業者にお問い合わせ下さい。sendmailがインストールされていない場合、もしくはインストールされていはいるものの、CGIからのメール送信を許可していない場合には、残念ながら、本CGIをご利用いただくことはできません。また、Windowsサーバの場合も同様です。

上記条件を満たしているにもかかわらず、メールが届かない理由として、sendmailのパスが正しく認識できなかったことが考えられます。MP Form Mail CGI は、sendmailの場所(パス)がサーバ内のどこなのかを、自動的に認識するようになっております。しかし、一部のサーバでは、sendmailがどこにあるのかを判別できず、メールが遅れない場合があります。この場合には、設定ファイル mpmail/confi/config.cgi の下のほうにある「■sendmailの指定」という欄をご覧下さい。何も指定されていないはずですが、ここに明示的に、ご利用のサーバにインストールされているsendmailのパスを指定してください。

▼ 確認画面や、送られてきたメールが文字化けする

フォームHTMLの文字コード(charset)は、Shift_JISになっているかを確認してください。本CGIは、フォームHTMLの文字コードがShift_JISであることを前提に作られております。もしEUC-JPやUTF-8でフォームHTMLを作成してしまうと、すべてが文字化けてしまいますので、ご注意ください。

top へ戻る