セットアップ
▼ファイルの確認

  CGIファイルの説明
 
index.cgi 配信するプランを管理するCGIファイルです。
IDとパスワードでログイン認証が必要です。
認証が成功するとsend.cgiを呼び出し未配信のメールをチェックし、送信します。
apply.cgi メール配信の申し込み、変更、解除を管理するCGIファイルです。
メール配信プランの設定で登録時、変更時、解除時に専用の通知メールを 自動配信することができます。
send.cgi メール配信を管理するCGIファイルです。
設定された日程でメールを自動配信します。なお、万一予定を過ぎた メールがあれば(サーバーの予期せぬダウンなどで)配信します。 (日付で指定していた場合は配信しません)
  ※「cgi-bin」ディレクトリ以外のCGIファイルはテキストファイルです。

  設定ファイルの説明
 
config.pl 設置構成やタイトル名なと各種の設定を適応するファイルです。
perlの知識がない方は必須の設定変更以外は変更しないことを推奨します。
設定を変更する際は、変更前に設定ファイルのバックアップファイルを作り 問題が発生した際に変更前の設定に戻してください。


▼設置構成

   赤字 で表示されているものが変更する箇所です。[ ]内はパーミッション
 

http://www.****.co.jp/

distribute/
|
|
|
|

cgi-bin/

index.cgi [705]
apply.cgi [705]
send.cgi [705]
config.pl
style.css
 
  |
  +---- / data [707] / method.cgi
  |   |
  |   +-----/ log [707] / plan.cgi
  |   | admin.cgi
  |   +-----/ csv [707]
  |   |
  |   +-----/ queue [707]
  |
  +---- / lib
  |
  +---- / lock
  |
  +---- / images
  |
  +---- / manual
  |
  +---- / template
 


▼環境設定(「cgi-bin」ディレクトリ内)

 perlへのパスをサーバー環境にあわせる
  各CGIファイルの1行目 (「index.cgi」「apply.cgi」「send.cgi」

#!/usr/bin/perl

をお使いのサーバー環境にあわせて指定してください
 
設定ファイル「config.pl」を設定する
  41行目 sendmailへのパス
$sendmail = '/usr/sbin/sendmail';(※’’内)

55行目 「apply.cgi」のURLを指定してください
$applycgi = 'http://www.*****/distribute/cgi-bin/apply.cgi';(※’’内)
 

▼パーミッションの変更

  修正が完了したら所定のファイルをFTP転送し、以下のとおり パーミッション を設定します。

 
index.cgi
apply.cgi
send.cgi
705
ディレクトリ
data
lock
csv (data内)
log (data内)
queue (data内)
707


▼セットアップ後の最初の認証

  パーミッションの設定が完了したら「index.cgi」にブラウザからアクセスします。
セットアップ後の最初の認証は初期ID、初期パスワードでの認証となります。 (ID、パスワードを変更しない場合は毎回初期ID、初期パスワード)初期パスワードは

初期ID id
初期パスワード pass

でログイン認証を行います。
初期ID、初期パスワードは「config.pl」内
119行目
121行目
で設定変更できます。

なお、更新画面「管理者情報」からID、パスワードを変更できます。
変更したID、パスワードを忘れてしまった場合は「admin.cgi」(テキストファイル)を1度、 空ファイルにして所定の位置にFTP転送し再度、初期ID、初期パスワードでの認証してください。


配信専用ページ
送信方式設定が「分割で送信する」場合は一日に一度のアクセスですべてのメールを配信します。
 
▼任意のページに「配信専用リンク」を作成しアクセスするたびにメールを配信したい場合のリンク

任意のページ内に

<a href="http://www.*****/distribute/cgi-bin/send.cgi">任意</a>

太字の部分は「send.cgi」のURLを指定します。

を追加してください。

▼任意のページでJAVASCRPTのプリロードを利用しアクセスするたびにメールを配信したい場合

任意のページの<HEAD></HEAD>内に

<script language="JavaScript"><!--
myIMG = new Image();
myIMG.src = 'http://www.*****/distribute/cgi-bin/send.cgi?run';
// --></script>

太字の部分は「send.cgi」のURLを指定します。(※?runを忘れずに)

を追加してください。

▼任意のページで画像を表示しつつ、アクセスするたびにメールを配信したい場合

※送信方式設定が「分割で送信する」の場合は画像は表示されません。

任意のページに

<img src="http://www.*****/distribute/cgi-bin/send.cgi?run">

太字の部分は「send.cgi」のURLを指定します。(※?runを忘れずに)
を追加してください。
なお、表示する画像を変更したい場合は「images」ディレクトリ内に画像ファイルをFTP転送し
設定ファイル「config.pl」内140行目

$imagefile = 'space.gif';

を書き換えてください。(デフォルトはサイズ「1」の画像)

 ▼送信制限

送信方式を「アクセス毎に送信」に設定している場合、一度のアクセスによって配信されるメール件数は最大で「 200 」となっていますので、システム全体の登録人数(顧客など)が多い場合一度のアクセスではすべてのメールが配信できない場合があります。その場合は一日に数回アクセスするようにしてください。

  例)1回の送信数が100通の場合
 
登録人数 必要アクセス数
0〜99 2
100〜199 4
200〜299 6
300〜399


8

  例)1回の送信数が50通の場合
 
登録人数 必要アクセス数
0〜99 4
100〜199 8
200〜299 12
300〜399


16

※上記のアクセス数は必要な最大数です。該当日にすべての登録者に配信すると仮定した場合です。
※日付指定メールを作成していない場合は上記必要アクセス数の半分です。
※送信方式が「分割で送信する」の場合は考慮する必要はありません。




クーロンの設定
▼その前に

cron(クーロン) とは、ジョブ(スクリプト)を自動実行するためのデーモンプロセスです。
メールの自動配信はこのデーモンプロセスによってスケジュール管理します。
cron(クーロン)が使用できない場合は、作成更新(index.cgi)ページの認証時に配信日程を管理しているので アクセスすることによってスケジュールの管理に代用してください。


■設定ファイルの変更

設定ファイル「config.pl」を設定する

  48行目 「distribute」ディレクトリをカレントディレクトリとして絶対パスで指定してください
$myroot = '../';(※''内)

例:
$myroot = '/home/ホームティレクトリ/distribete/';


「send.cgi」内を設定

  4行目 config.plへの絶対パス
require './config.pl';

例:
require '/home/ホームディレクトリ/distribute/cgi-bin/config.pl';
  絶対パスとはサーバー上のフォルダパスのことです。絶対パスが分からない場合は
「 distribute 」ディレクトリ内の「 getpath.cgi 」を該当のファイル同じ場所に置き、 ブラ
ウザからアクセスしてください。(perlパスの変更が必要な場合があります)
パーミッションは[ 705 ]


▼設定

telnetなどのターミナルでサーバーに接続します。

■ 現在の設定を見る
$ crontab -l

■ 設定を変更する
$ crontab -e

■ 設定内容の削除
$ crontab -r

設定する前と設定した後に内容を確認してください。

EDITOR環境変数に好みのエディタ名を定義したうえで

$ crontab -e

コマンド書式は,[分] [時] [日] [月] [曜日] [スクリプトの絶対パス]
分 : 01〜59
時 : 1〜24
日 : 1〜31
曜日: 0(日曜)〜6(土曜)
書式はスペースまたはタブで区切ります。

例:
0 12 * * * /home/user/public_html/distribute/send.cgi
毎日、昼の12時にメール送信システムを実行します。

クーロンデーモンの実行結果はメールで自分自身に知らされます。
メールを送ってほしくない場合は、
0 12 * * * /home/user/public_html/distribute/send.cgi 1> /dev/null
としてください。この場合はエラーが起こった時だけ (標準エラー出力に出力があった時だけ)メールが送られてきます。

▼送信制限

送信方式設定が「分割で送信する」でない場合、一度のアクセスによって配信されるメール件数は最大で「 200 」となっていますので、システム全体の登録人数(顧客など)が多い場合一度のアクセスではすべてのメールが配信できない場合があります。その場合はcron(クーロン)のスケジュールを一日に数回アクセスするようなスケジュールに設定してください。以下は登録人数と必要アクセス数の関係です。

登録人数と必要アクセス数の関係