ラッキーカウンター DX4.0
概要|インストール|各種設定方法|管理者CGI|表示デザインの変更・作成|セキュリティ|FAQ
設置にあたって
設置するサーバーが要件を満たしていなければなりません。
- CGI/SSI(#exec、サーバーによっては#includeでも可能ですが)の使用を許可していること。
- Perl5以上がインストールされていて使えること。
- ログメールを使う場合はsendmail(互換)コマンドが使える事が必要です。
これから簡単なインストール説明をしますが、好みの設定や、自分の環境に合わせ適宜読み替えて下さい。また、 各サーバーの仕様、CGIの設置制限によりまったく違う設定をしなければいけない場合があります。 各サーバーのFAQ、サポート等を参考に、自分の環境に合わせ適宜読み替えながら柔軟に設定して下さい。
インストール説明をわかりやすくするために、下記の例では、解凍したディレクトリ名等をそのままで説明してありますが、本来であれば、配布されているディレクトリ構造のままでインストールする事は、あまり好ましくありません。 事前にディレクトリ名等を容易に推測できない名前に変更した上で、設定を書き換えインストールする事をお勧めします。
詳しくはこちらをご覧ください。
- 設置は難しい部類に入ります(らしい(^^;)ので、ある程度基本的な知識がないと無理かもしれません。有料での設置代行も行いますが、それにいては
FAQ をご覧ください。
- カウンタースクリプトとしては処理が重いです。サーバーにかなり負荷がかかるかもしれませんので、あらかじめその点を考慮しておいてください。
- 仕様上、IPロックや名簿データにおいて、ファイルを順次作成していきます。inodeに制限がある場合、inode不足になるかもしれませんので注意してください。
- サーバーの条件によって、動作しなかったり、制限がかかります。
- サーバーへ設置する前に、ローカルであらかじめ動作テストをしてから設置して下さい。
- UNIX系のサーバーに設置することを前提にしてあります。NT/MAC系では、テストはしていません。
TOP
全体図
・茶色はディレクトリ 青色はファイル
・カッコ内の数値はパーミッション(第三者権限のサーバー/ユーザー権限のサーバー)
WWWディレクトリ(配布ファイルでは、webdir)
│
├ meibo 直表示モード時名簿HTML用ディレクトリ(707/701)
│
├ images
│ │
│ ├ tmpl0 名簿テンプレート0画像ディレクトリ(601/601)
│ │ ├ back.gif (604/604)
│ │ ├ luck_logo.gif (604/604)
│ │ └ rank_logo.gif (604/604)
│ │
│ └ counter0 カウンター0画像&名簿テンプレート0アイコンディレクトリ(601/601)
│ ├ 0〜9.gif (604/604)
│ ├ r.gif (604/604)
│ ├ l.gif (604/604)
│ ├ q.gif (604/604)
│ ├ s.gif (604/604)
│ ├ c.gif (604/604)
│ ├ 1pix.gif (604/604)
│ ├ croun.gif(604/604)
│ ├ home.gif (604/604)
│ ├ mail.gif (604/604)
│ └ rare.gif (604/604)
│
└ cgi-bin
│
└ luckydx ラッキーカウンターディレクトリ(701/701)
├ .htaccess アクセス制限ファイル(604/604) ※参照 )
├ luckcd.pl カウンター本体(705/701)
├ meibo.cgi 名簿CGI(705/701)
├ cookie.cgi クッキー送出CGI(705/701)
├ jcode.pl 日本語コード変換モジュール(604/600)
├ Elemail.pm メール送信モジュール(604/600)
├ B64util.pm Base64モジュール(604/600)
├ WebLog.pm ログモジュール(604/600)
├ base.cfg 基本設定ファイル(606/600) ※1
│
├data0 カウンター0用データディレクトリ(703/700)
│ ├ lucky.cfg カウンター設定ファイル(606/600) ※1
│ ├ luckc.dat カウントデータ(606/600)
│ ├ user.dat 独自ラッキー番号設定ファイル(604/600)
│ ├ count.ssi 通常カウント時表示用テンプレート(604/600)
│ ├ get.ssi ゲット時表示用テンプレート(604/600)
│ ├ deny.dat IP/HOST制限設定ファイル(604/600)
│ ├ today.dat 本日/昨日のカウント数記録データ(606/600)
│ │
│ ├ lock カウンターロックディレクトリ(707/700)
│ └ log カウンターログディレクトリ(703/700)
│
├ meidata 名簿データ用ディレクトリ(703/700)
│ ├ meibo.idx 名簿用インデックス(606/600)
│ ├ rank.idx ランキング用インデックス(606/600)
│ │
│ ├ data 名簿データディレクトリ(707/700)
│ └ html CGI表示モード時HTML書き出しディレクトリ(707/700)
│
├ meilock 名簿ロックディレクトリ(703/700)
│
├ template HTMLテンプレートディレクトリ(701/700)
│ ├ list-0.html 名簿リスト用テンプレート0(604/600)
│ ├ rank-0.html ランキング用テンプレート0(604/600)
│ ├ form-0.html 登録フォーム用テンプレート0(604/600)
│ ├ list-1.html 名簿リスト用テンプレート1(604/600)
│ ├ rank-1.html ランキング用テンプレート1(604/600)
│ ├ form-1.html 登録フォーム用テンプレート1(604/600)
│ ├ info.html エラー時等用テンプレート(604/600)
│ └ admin_tpl.html 管理者CGI用テンプレート(604/600)
│
└ meiadmin 管理者ディレクトリ(701/701)
├ admin.cgi 管理者CGI(705/701)
│
└ data 管理者データディレクトリ(703/700)
└ admin.dat パスワードデータ(606/600)
※1 suEXEC環境の方以外は、admin.cgiでの設定が終わり次第、パーミッションを604に戻してください。
TOP
サーバー仕様の確認
- 自分のWWWディレクトリ(トップページを置くディレクトリ)のフルパス(絶対パス)を確かめてください。FTPで見たディレクトリと実際のフルパスは異なっている場合があります。
通常はこういった感じです ->
/home/ユーザー名/public_html/
- Perlのパス、sendmailのパスを確かめてください。
- CGIやSSIの制限や注意点がないかどうか、よく確認してください。 スクリプトが、suEXEC等ユーザー権限で動作する場合とnobody等の第三者権限で動作する場合では設定等が若干変わってきます。
TOP
ローカル(自分のパソコン)での作業
ダウンロードした書庫ファイルの解凍
- ファイルは、LHA形式(拡張子 .lzh)で圧縮してあります。解凍用ソフトは各自用意して下さい。 専用の作業ディレクトリ(フォルダ)を用意して、そこへダウンロードしたファイルをディレクトリ付で解凍します。
- ファイル名の大文字小文字はプログラムの動作に影響します。大文字小文字の区別を有効にして解凍してください。
- 解凍すると以下のディレクトリができます。
- luckydx4.0
- webdir(本体)
- util(チェック用CGIや、コンバート用CGI等)
help(ヘルプファイル)
設定書き換え
- 本体を書き換える -> luckcd.pl ・
meibo.cgi ・ admin.cgi (
書き換える内容は3つともすべて共通です。)
- 1行目 perl指定、サーバー指定のperlのパスを書きます
#!/usr/local/bin/perl
- 5行目 カウンターをインストールするディレクトリをフルパスで書きます。最後の/を忘れずに。
$counter_dir = '/home/user/public_html/cgi-bin/luckydx/';
例) /home/elemsoft/ がホームディレクトリ、www/ が WWWディレクトリ、cgi-bin/luckydx/が設置ディレクトリとすると、 /home/elemsoft/www/cgi-bin/luckydx/
になります。
- 設定を書き換える -> base.cfg ・ lucky.cfg
- /home/user/public_html/cgi-bin/luckydx/....
と書いてあるところをすべて カウンターをインストールするディレクトリ/... へ変更
- /cgi-bin/luckydx/.... と書いてあるところをすべて WWWディレクトリからの絶対パス/...、またはURL へ変更
- とりあえず、base.cfg の
163行目から下を書き換えると、後は管理者CGIから設定できるようになりますが、どのみちすべての書き換えが必要となりますから、両方のファイルについて、エディタで検索・置換するとよいと思います。
TOP
FTPソフトで転送
- 大文字小文字の区別を有効にして転送してください。ファイル名の大文字小文字はプログラムの動作に影響します。
- 全体図の通り、各ファイルを転送します。
- 画像は「バイナリモード」、それ以外は「アスキーモード」で転送します。転送形式を間違うと動作不良を起こしますので注意してください。拡張子で判断するソフトで転送する場合は特に注意してください。
TOP
パーミッションの設定
- 全体図のカッコ内の数値を参考にしてパーミッションを設定してください。
TOP
admin.cgi で設定
- カウンターの設定を、admin.cgiで行います。
- 詳しくは、こちら
- suEXEC環境*以外*の方は、admin.cgiでの設定が終わり次第、
base.cfg ・ lucky.cfg のパーミッションを604に戻してください。
TOP
カウンターの呼び出し方
- サーバーの環境によって、使える書式が微妙に違ってきます。サーバーで用意されているFAQや注意事項にしたがってください。
- カウンターを呼び出したいHTMLファイルに
- cmd の場合 <!--#exec cmd="/設置したパス/luckcd.pl"-->
- cgi の場合 <!--#exec cgi="/WWWルートからのパス/luckcd.pl"-->
- suEXECの場合は上記書き方では動作しませんので注意してください。※下記 suEXEC の項目を参照
- 複数カウンターを扱う場合は、こちらをご覧ください。
TOP
suEXEC
- 通常、CGI/SSIはWebサーバーに設定されているアカウントの権限(nobody等)で動作しますが、suEXECを導入しているWebサーバーの場合、CGI/SSIは、CGI所有者の権限で動作します。
- suEXEC環境下では、ある程度セキュリティを増す事ができますが、そのかわりに若干の制限が出てきます。
- 引数が渡せない。 (ということは、複数ページのカウントができない)
- /ではじまるパス指定(絶対パス指定)、../ではじまるパス指定(自分より上のディレクトリを指定)ができません。
- 上記の制限を回避したい場合は、起動用として、簡単なシェルスクリプトを用意し、これを代わりに呼び出すなどの方法をとる必要があります。 ここでは詳しく説明しませんが
、サンプルとして、counter.sh を同梱してありますので見てください。
TOP
セキュリティ
- ガイドに沿ってインストールしたままの状態だと、セキュリティ上の不都合が生じている事が多々あります。設置後は、こちらを必ず読んでいただいて問題のある場合は正式稼動前に修正してください。
TOP
ラッキー番号及びレア度
※Vr4.00では、レア度が大幅に変更となっています。
ラッキー番号及びレア度は以下のとおりです。
- キリ番
- レア度2
- 1000、2000、10000など、桁単位のキリ番 +3
- 隠しラッキー
- ハーフ(ゾロ目の変形、両サイドがゾロ目、奇数桁の場合は中央桁不問。1122、2233、11922、11355等)
- スプリット(真中を境にして同じ番号、奇数桁の場合は中央桁不問。1212、2525 12512、32532等等)
- 逆スプリット(スプリットの変形、左右が逆、奇数桁の場合は中央桁不問。1221、256652、12521、34943等)
- リバース(逆スプリットの変形、奇数桁のみ、12321、23432等)
ユーザー設定ではレア度を自由に設定できます。 組み込み番号と同じ番号をユーザー設定で指定すると、ユーザー設定のほうが優先されます。
※ デフォルトではユーザー設定は「使用しない」になっています。
TOP
制限事項及び注意点
- ラッキーナンバーを1人だけに取得させるため、IPロック等がかかっている場合のラッキーカウント時には、最右桁に?が表示されます。
- sendmail互換のメール配送サーバーがスクリプトから使用できなければメールを配信できません。
- メール配送は設定値を越えた後のアクセス時にメールを配信します。 決まった時間毎に送信するわけではありません。
- #exec cmd以外で複数ページのカウントをしたい場合は、ブラウザから呼び出す際のURLを、http://www.xxxx/count.shtml?f=1 のように
?f=XX をページにつけ引数を渡します。 もし、この方法で引数がスクリプトに渡らないサーバーでは、シェルスクリプトを書く等、少々工夫する必要があります。
TOP
(C)2003 ELEMENTZ::SOFTWARE