さくらインターネット

メールフォームはSSLで、さくらインターネットの共有SSLとフリーCGIの組み合わせ利用法

この記事は約5分で読めます。

Mailcgicsv企業がWEBマーケティングを展開するときには、自由にカスタマイズして使えるメールフォームのCGIが便利だ。通常のメールフォームとしても使えるし、資料請求やアンケート実施など、ちょっと手を加えるだけで用途が広がる。ただし、個人情報となる名前や連絡先の記入欄がある場合は、セキュリティに配慮したSSL利用にしたほうがいい。そこで、さくらインターネットの共有SSLフリーのメールフォームCGIを組み合わせて使ってメールフォームを設置する方法を紹介する。

設置したサンプルのメールフォームはhttps://secure1121.sakura.ne.jp/ssl.domo-domo.com/である。

さくらインターネットで共有SSLを設定する

まずは、SSLの設定から。さくらインターネットのサーバコントロール画面で、「ドメイン管理」をクリックすると設定できる画面になる。星印(★)がついている初期ドメインの「変更」をクリックし、共有SSLが使えるようにする。なお、さくらおンターネットで共有SSLが使えるのは「スタンダード」以上のコースで、「ライト」では使用できないのでご注意を。

手順は、「3. 共有SSLの利用を選んでください」のところを見ると、最初は「共有SSLを利用しない」が選択されているので、これを「共有SSLを利用する」に変更して、その下の「送信」ボタンをクリックするだけである。すると、以下のような画面になる。

Sslsetting

これで、共有SSLが使えるようになったはずである。上記の例では「https://****.sakura.ne.jp」というドメイン名になっているが、今回作成したサンプルのメールフォームはhttps://secure1121.sakura.ne.jp/ssl.domo-domo.com/である。これはつぎのメールフォーム設置の説明をしやすくするために「domo-domo.com」に「ssl」というフォルダを設置したためである。実際の運用にはセキュリティ面の問題もあるので、さくらインターネットの共有SSLのドメイン表示については「共有SSLの設定」をよく読んでから設定するとよい。

フリーCGIを使ったメールフォーム設置

メールフォームのCGIはいろんなものが出ているが、今回は送信した記録をCSV形式で保存できるフリーの「csvmail_v4s」というCGIを利用した。

「sample.html」をテキストエディタで編集して「index.html」とリネームして保存してからFTPで上記の「ssl」フォルダにアップロードする。

作者のページに書いてある設定と設置の方法は以下のとおり。

  • 「mail.cgi」をテキストエディタで開き、1行目にPerlのパスを書きます。
  • 「mail.cgi」をテキストエディタで開き、初期設定の部分を修正してください。
  • 「edit.cgi」をテキストエディタで開き、1行目にPerlのパスを書きます。
  • 「edit.cgi」をテキストエディタで開き、初期設定の部分を修正してください。
  • テンプレートHTML(check.html)はご自由に編集してください。
    注意! 「_%」「%_」で囲まれた文字は削除しないでください。削除した場合動作しません。
  • 全体のディレクトリ構成・ファイル設置は、以下を参考にしてください。
    【設置例】
    ファイル名 属性 転送モード 備 考
    csvmail_v4s/ 755
    mail.cgi 755 ASCII メール送信プログラム
    edit.cgi 755 ASCII CSVエディター
    jcode.pl 644 ASCII
    stdio.pl 644 ASCII
    remail.txt 644 ASCII 自動返信メール本文テンプレート
    check.html 644 ASCII 入力内容確認画面テンプレート
    title.gif 644 BINARY
    data/ 777
    data.cgi 666 ASCII メールログ
    lock/ 777
  • 設置(アップロード)が完了しましたら、パーミッションの設定を忘れずに行ってください。
    上記のカッコ内がパーミッションです。サーバによってはこれに限りません。参考まで。
  • CSVデータの編集をする際には、「edit.cgi」にアクセスします。
  • フォームのページ <form action=””> の action属性には、mail.cgiのパスを入力してください。
    例: <form method=”post” action=”./cgi-bin/csvmail_v4s/mail.cgi”>
  • Eメールの項目の name属性は Email にしてください。
    例: <input type=”text” name=”Email” size=”20″>
  • フォームの name属性に mode は使用しないでください。プログラム中で使用されていますので mode を使用してしまった場合、動作不良の原因になります。
    下の例のように記述してはダメ!
    例: <input type=”text” name=”mode”>
  • チェックボックス、ラジオボタンを使用した場合、何も選択しないで送信すると、CSVファイルに書き込む際にデータがずれてしまいます。そのずれを無くすために、下の例のようにダミーの記述をしてください。
    詳しい記述方法は、sample.html を参照ください。
    例: <input type=”hidden” name=”radiobutton” value=”dic_dummy”>

【2014年3月8日追記】
スマートフォン対応も含めSSLメールフォームを刷新したので新しい記事の方を参考にしてください。