*.7z | *.bin | *.bmp | *.cab | *.doc *.docx | *.exe |
*.gif | *.hqx | *.jpg *.jpeg | *.lzh | *.mid *.midi | *.mp3 |
*.mpg *.mpeg | *.png | *.ppt *.pptx | *.rar | *.sit | |
*.swf | *.txt | *.wav | *.xls *.xlsx | *.zip |
※上記以外の拡張子のファイルを使用する場合は設定ファイルに追加してください。
v1.51 以前をお使いの方はお手数ですが downcfg.cgi を新規に設定されてから logs ディレクトリ、downcfg.cgi, download.cgi をアップロードしてパーミッションを変更してください。
v1.51 以降をお使いの方は download.cgi のみ差し替えるだけで OK です。(download.cgi の perl のパス、パーミッションの設定は忘れずに行なってください)
〓 設置以外の変更・注意点 〓
ダウンロードしたファイルを解凍すると download フォルダがあります。このフォルダを開くと2つのフォルダと4つのファイルの計6つのファイルがあります。
$FileDir = './file/'; [必須] ファイルディレクトリのパスを相対パスで記述してください。 $LogDir = './logs/'; [必須] ログ保存ディレクトリのパスを相対パスで記述してください。 $DownLog = 'downlog.csv'; [必須] ダウンロードログファイル名を記述してください。 $ErrLog = 'errlog.csv'; [必須] エラーログファイル名を記述してください。 $LogSplitMode = 0; [必須] ログを分割するタイミングを 0, 1, 2 のいずれかで記述してください。 0 は指定サイズに達した時、1 は日付が変わった時、2 は月が変わった時に現状のログが過去ログとなります。 $LogSplitSize = 1024 * 300; [必須] ログ分割サイズを記述してください。 この場合はログ分割指定がサイズ指定「0」の時、ログサイズが300キロバイトになると過去ログファイルが作成されます。 ※ログ分割指定がサイズ指定以外の場合はこの項目は無視されます。 $LogSave = 0; [必須] 作成された過去ログを保存しておく最大ファイル数を数値で記述してください。 全て保存しておく場合は 0 にしてください。この場合は自動削除いたしません。 保存数を指定した場合は指定されたファイル数を超えた時に一番古い過去ログが自動削除されます。 $AdminMailto = ''; $SendmailPath = ''; [任意] 過去ログを送信する場合、送信先のメールアドレスと sendmail のパスを記述してください。 過去ログ保存数を指定している場合に自動削除される過去ログを添付ファイルとして送信することができます。 使用しない場合はそれぞれ空白「''」にするかコメントアウトしてください。 $TotalCountFile = './count.cgi'; [任意] 総ダウンロード回数保持ファイル名をカレントディレクトリに指定して記述してください。 解析時に表示されるダウンロード数はログ単位になりますので、 今までの各ファイルの総ダウンロード数を保存する場合のみ記述してください。 使用しない場合は空白「''」にするかコメントアウトしてください。 $LoginLogFile = './loginlog.cgi'; [任意] ログイン時間記録ファイル名をカレントディレクトリに指定して記述してください。 ログイン記録を使用する場合のみ記述してください。 使用しない場合は空白「''」にするかコメントアウトしてください。 $RowIndexFormat = 0; [必須] 解析項目に表示される番号の形式を設定してください。 0 は連番形式、1 はランキング形式になりますのでどちらかを記述してください。 ※総ダウンロード回数の表示は常にランキング形式になります。 $AdminPass = 'password'; [必須] 管理パスワードを記述してください。半角英数字とアンダースコアのみ使用できます。 ※他人がわからないようなパスワードに必ず変更してください。
(@AllowLoginDomain) = (); [任意] 管理画面にログインを許可するドメインを設定する場合に記述してください。 $ViewTotalCount = 0; [任意] 総ダウンロード数を一般公開する、しないを指定してください。 $LineFeedChange = 0; [任意] テキストファイルをダウンロードしてもらう時の改行コードの扱いを指定してください。 $UrlDirectory = ''; (@UrlFileList) = (); [任意] ファイルディレクトリ以外のファイルをダウンロードしてもらう場合(以下 URL モード)に記述してください。 (%AliasFileName) = (); [任意] ダウンロードされたファイルを別の名前としてログに記録する場合に記述してください。 (%AddMime) = (); [任意] ファイルの種類を追加する場合に記述してください。
$SetReferer = ''; [任意] 指定した URL からのみダウンロードを許可する場合に記述してください。 $DownloadLimit = 0; $NeedCookie = 0; [任意] 1人のユーザーが1日にダウンロードできる最大数を指定してください。 最大数を指定する場合はクッキーのチェックをする、しないを指定してください。 $WaitTime = 0; $DenyIPFile = './denyip.cgi'; [任意] 同一 IP アドレスのクライアントが最後にダウンロードしてから 次のファイルをダウンロードするまでの待機時間(秒)を指定してください。 待機時間を指定する場合は IP アドレスを記録するファイル名をカレントディレクトリに指定して記述してください。
$StyleBgColor = '#ffffff';
$StyleColor = '#000000';
$StyleFont = 'Verdana';
$StyleSize = '0.7em';
$StyleBorder = '#eeefef';
$StyleHeader = '#eeeeff';
$StyleGraph = '#ccccff';
$StyleGraphBdr = 0;
$StyleGraphBdrColor = '#77aaff';
$StyleLink = '#0000ff';
$StyleVlink = '#800080';
[必須] 解析結果表示されるデザイン(見栄え)を変更される場合は、各項目を任意の値に変更してください。
$UnRecErrorCode = '';
[任意] エラー時にエラーログに記録したくないエラーがある場合のみ設定してください。
#!/usr/local/bin/perl
[必須] 1行目に perl のパスをサーバで指定された perl のパスに書き換えてください。
ファイル名 | 概要 | 転送モード | パーミッション *1 |
download/ | ディレクトリ | - | (701 or 705) or 707 or 777 |
file/ | ファイルディレクトリ | バイナリモード | (700 or 701) or 705 or 755 *2 |
aaa.zip bbb.jpg ... | ここにダウンロードしてもらうファイルをいれて転送してください | 〃*3 | - |
index.html | - | - | - |
logs/ | ログ保存ディレクトリ | アスキー(テキスト)モード | 700 or 707 or 777 |
index.html | - | 〃 | - |
downcfg.cgi | 設定ファイル | 〃 | 600 or 604 or 644 |
download.cgi | ダウンロードスクリプトファイル | 〃 | 700 or 705 or 755 |
index.html | - | 〃 | - |
Readme.html | 取り扱い説明書(転送不要) | - | - |
以下自動作成されます(各ファイルのパーミッションは 600 に自動設定されます) | |||
logs/downlog.csv | ダウンロードログファイル *4 | - | - |
logs/errlog.csv | エラーログファイル *4 | - | - |
count.cgi | 総ダウンロード回数保持ファイル *5 | - | - |
denyip.cgi | 多重ダウンロード防止用ファイル *5 | - | - |
loginlog.cgi | ログイン記録ファイル *5 | - | - |
設置が完了しましたら download.cgi にアクセスしてください。パスワード入力フォームが表示されれば設置完了です。
表示されない場合は perl のパス、downcfg.cgi の設定、パーミッションを確認してください。FAQ
表示されましたら、パスワード入力フォームに downcfg.cgi で設定したパスワードを入力してログインしてください。
セッションの管理にクッキーを使用していますので、ブラウザの設定でクッキーの受け入れを有効にしておいてください。有効にしないとログイン後のモード切替等ができません。
正常にログインされるとファイル保存ディレクトリにあるファイル一覧と設定のチェック結果が表示されます。表示例
設定項目に [NG] が表示されている時は、downcfg.cgi 内の該当する設定記述を見直してください。
※ダウンロードログファイルが存在する場合は、ダウンロード結果表示が優先されて表示されますので、モード切替で「File Info」を選択してください。
ファイルディレクトリにあるファイルを、download.cgi の引数に ?name=xxx.xxx として name= にファイル名を記述してリンクを作成してください。ファイル名には必ず拡張子もつけてください。
<a href="http://www.example.com/cgi-bin/download/download.cgi?name=aaa.zip">ダウンロード</a> <a href="../cgi-bin/download/download.cgi?name=bbb.jpg">ダウンロード</a>
ダウンロードに指定できるファイル名は半角英数字、ハイフン、ドット、アンダースコア (0-9 A-Z a-z - . _) のみ使用できます。指定された文字以外が含まれているファイル名の場合は、ファイルが存在していてもダウンロードすることはできませんので確認してください。
※管理画面にログインしてモード切替で「File Info」を選択すると該当ファイルのリンクが表示されますので参考にしてください。
ただし、不正なファイル名や該当しないファイルの種類(許可されている拡張子以外)のリンクは表示されません。
クッキーの受け入れを有効にしておいてください。受け入れ拒否の状態ではログイン以降の操作が行えません。
ログの並び順(昇順、降順)を変えたい場合は、ログ番号上部の No. をクリックすると変更されます。
1ページ内の表示件数を指定する場合は、「view」のドロップダウンメニューから変更することができます。
指定した表示件数を超えた場合は、ページ切り替え用のリンクが表示されます。表示件数が多い場合、直接移動のリンクは一部省略されます。
Log Name に指定したログファイルを Select Mode のアクションをします。
日付とファイル名を指定する場合は、それぞれドロップダウンメニューから選択してください。
「ALL DATE」「ALL FILE」以外の組み合わせで該当するログがない場合は全て表示されます。その時はドロップダウンメニューの「ALL DATE」「ALL FILE」以外のメニューリストは消えますので、再度の「ALL DATE」「ALL FILE」の状態でモード切り替えをしてください。
ログ内のホスト名の項目にあるホスト名のリンクをクリックすると、そのホスト名がダウンロードしたログのみ表示します。(ホスト名解析)
このときに表示件数を切り替えるドロップダウンメニューの横にチェックボックスが表示されますので、Host Search に表示されているホストがダウンロードした日付やファイルを表示する場合は、チェックボックスのチェックを入れた状態でモード切り替えをしてください。
また、ホスト名解析(「Host Search」にホスト名が表示されている状態)を解除する場合は、チェックを外してモード切り替えをしてください。
モード切替の「Delete」を選択すると Log Name に表示されているログを削除します。削除時には誤って削除しないように削除確認のダイアログが表示されます。なお、JavaScript が無効の場合は「Delete」の表示はされません。
モード切替の「Download」を選択すると Log Name に表示されているログをダウンロードします。
設定項目の [総ダウンロード回数保持ファイル] を記述して設定された場合、モード切替に「Total Count」が追加されます。
このモードは、通常のログはログファイル単位での解析になりますが、今までにダウンロードされたファイルの総ダウンロード数が表示されます。
ここに記録されるログは、ファイル名、総ダウンロード数、初めてダウンロードされた日付、最後にダウンロードされた日付です。
ただし、途中からこのファイルを有効にした場合はその時点からの総ダウンロード数になります。
モード切替の「File Info」を選択するとファイルディレクトリにあるファイルの一覧、設定のチェック結果が表示されます。
また、ログファイルが無い場合には自動的にこのモードに切り替わります。
モード切替の「Logout」を選択するとログアウトして管理画面を終了します。ブラウザを全て終了した場合にもログアウトした状態になります。パスワード、現在のセッションの状態は一時クッキーに保持され、ログアウトしたときに破棄されます。
ダウンロードしてもらうファイルのサイズが 5 MB 以上の場合は、CGI の負荷を減らすために URL モードに指定することをおすすめします。
count.cgi, loginlog.cgi, denyip.cgi は管理画面からダウンロード、削除することはできませんので、FTP 上にて行ってください。
※オーナー権限以外で動作されている場合、このファイルは CGI 自身が作成していますので削除のみ行えます。(ローカルからこのファイルを別途アップロードされた場合はこの限りではありません)