|  |  |  |  | 
                
                  | CLIP-MAILを使う | 
                
                  |  | 今までHPに設置するメールフォームは無料のメールフォームサービスを使っていたのですが、やっぱり自前のメールフォームじゃなくちゃカッコつかないなぁ。。なんて考えていたあのですが、設置するとなるとさしあたって緊急の課題じゃないし。。のびのび状態になっていました。 最近になって、新しいHP(このHP)を立ち上げたのを機会に決心したような訳です。どうせなら添付ファイルが送信出来ればいいなぁと思いスクリプトを探していたら「CLIP-MAIL」を見つけました。比較的簡単に設置出来そうなのでやってみることにしました。
 |  | 
                
                  |  |  |  |  | 
                
                  | ● | CLIP-MAILのダウンロード |  |  | 
                
                  |  |  |  |  | 
                
                  |  | KentWeb様のCLIP-MAILページから利用規定に同意の上ダウンロードします。「clipmail.zip」というZIP形式の圧縮ファイルがダウンロードされますのでWinZipや+LHAなどのソフトで解凍します。 |  | 
                
                  |  |  |  | 
                
                  |  |  |  | 
                
                  | サーバーにアップロードと設定 | 
                
                  |  | 
                
                  | ● | サーバーにCLIP-MAILをアップロード |  |  | 
                
                  |  | 解凍したファイルをサーバーにアップロードします。 |  | 
                
                  |  | アップロード先のディレクトリはこうしました。 |  | 
                
                  |  | 送信フォームとCGI関連は別ディレクトリにします。 |  | 
                
                  |  | 
                    
                      
                        |  | ファイル | アップロード先 |  
                        |  | ・clipmail.html(送信フォーム) | /home/ユーザーデリレクトリ/public_html/mailform |  
                        |  | ・clipmail.cgi(メール送信プログラム) ・init.cgi( 設定ファイル)
 ・admin.cgi(管理用プログラム)
 ・check.cgi(設定チェック用プログラム)
 ・tmpl/*.txt(テンプレートファイル)
 ・tmpl/*.html(テンプレートファイル)
 ・lib/base64.pl(Base64変換モジュール)
 ・lib/CGI/Minimal.pm(データ受理モジュール)
 ・lib/Jcode.pm(コード変換モジュール)
 ・lib/Unicode/Japanese.pm(コード変換モジュール)
 ・data/log.cgi(記録ファイル)
 ・data/ses.cgi(セッションファイル)
 | /home/ユーザーディレクトリ/public_html/cg-bin/mail |  
                        |  |  |  |  |  | 
                
                  |  |  |  | 
                
                  | ● | パーミッション設定 |  | 
                
                  |  | KentWeb様のCLIP-MAILページに記載の通りに設定します。 
 |  | 
                
                  |  | 
                    
                      
                        |  |  |  |  |  |  
                        |  | public_html | /index.html (トップページ) |  |  
                        |  |  | clipmail/clipmail.html |  |  
                        |  |  | cgi-bin/clipmail/clipmail.cgi | [705] |  
                        |  |  |  | admin.cgi |  | [705] 管理画面 |  
                        |  |  |  | check.cgi |  | [705] 動作チェック用 |  
                        |  |  |  | init.cgi |  | [604] 設定ファイル |  
                        |  |  |  | style.css |  |  |  
                        |  |  |  | 
 |  
                        |  |  |  | lib/ | base64.pl |  |  
                        |  |  |  |  | Jcode.pm |  |  
                        |  |  |  | 
 |  |  |  
                        |  |  |  |  | Jcode / | *.* |  
                        |  |  |  |  | Unicode/ | *.* |  
                        |  |  |  |  | CGI/ | Milenimal.pm他 |  
                        |  |  |  | 
 |  |  
                        |  |  |  | data/ | log.cgi | [606] |  
                        |  |  |  |  | ses.cgi | [606] |  
                        |  |  |  | upl |  | [707] |  
                        |  |  |  | 
 |  |  |  
                        |  |  |  | tmpl/ | *.txt |  |  
                        |  |  |  |  | *.html |  |  
                        |  | 
 |  |  |  |  | 
                
                  | ● | 設定ファイルinit.cgiの設定 |  | 
                
                  |  |  |  | 
                
                  |  | init.cgiをテキストエディタで編集します。(赤字の部分を変更) |  | 
                
                  |  | # 管理者用パスワード $cf{password} = '*****';
 |  | 
                
                  |  |  |  | 
                
                  |  | # 送信先メールアドレス $cf{mailto} = 'xxxx@yahoo.co.jp';      自分のメールアドレス
 |  | 
                
                  |  |  |  | 
                
                  |  | # sendmailのパス【サーバパス】 $cf{sendmail} = '/usr/sbin/sendmail';    サーバーのsendmailパスを調べて変更する
 |  | 
                
                  |  |  |  | 
                
                  |  | サーバーのsendmailパスの調べ方 |  | 
                
                  |  | # which sendmail
 
 /usr/sbin/sendmail
 
 
 |  | 
                
                  |  |  |  | 
                
                  |  | # 自動返信 # 0 : no
 # 1 : yes
 $cf{auto_res} = 1;       自動返信デフォルトのまま
 |  | 
                
                  |  |  |  | 
                
                  |  | # 添付メールを許可する # 0 : no
 # 1 : yes
 $cf{attach} = 1;      添付ファイル許可デフォルトのまま
 |  | 
                
                  |  |  |  | 
                
                  |  | # 最大受信サイズ(Byte) # → 例 : 102400Bytes = 100KB
 $cf{maxdata} = 1024000;     1MBデフォルトのまま
 |  | 
                
                  |  |  |  | 
                
                  |  | # 送信後の戻り先【URLパス】 $cf{back} = '../../mailform/clipmail.html';
 |  | 
                
                  |  |  |  | 
                
                  |  | 以上でinit.cgiの設定終了です。 |  |  | 
                
                  |  |  |  |  | 
                
                  | ● | CGIプログラムperlパスの確認と変更 |  |  | 
                
                  |  | サーバーのperlパスの調べ方 |  |  | 
                
                  |  | # which perl
 
 /usr/local/bin/perl
 
 
 |  | 
                
                  |  |  |  |  | 
                
                  |  | 以下の各CGIファイル先頭部分の#!/usr/bin/perlを必要に応じてサーバーのperlパスに変更する。サーバーによっては#!/usr/bin/perlでも#!/usr/local/bin/perlのどちらでも使用出来るものがあります。 私のサーバーはperlパスを気にしなくて済むようにどちらでも使用出来るように設定しています。
 |  | 
                
                  |  | admin.cgi |  |  | 
                
                  |  | clipmail.cgi |  |  | 
                
                  |  | check.cgi |  |  | 
                
                  |  |  |  |  | 
                
                  | ● | 関連記事 |  |  | 
                
                  |  | ユーザーディレクトリでCGIを有効にする→こちらを参照 |  |  | 
                
                  |  |  |  |  | 
                
                  | ● | 設置したメールフォーム |  |  | 
                
                  |  | こちらが実際のメールフォームです。 |  |  | 
                
                  |  |  |  |  | 
                
                  |  |  |  |  | 
                
                  |  |  |  |  | 
                
                  |  |  |  |  | 
                
                  |  |  |  |  | 
                
                  |  |  |  |  | 
                
                  |  |  |  |  | 
                
                  |  |