#!/usr/local/bin/perl
# ↑あなたのプロバイダの PERL5 のパスを記述します
$|=1;
# ↓この1行は書き換えないで下さい。
$CONF{'CONF_MODE'} = 'safety';
############################################################
# 設定項目、開始
############################################################
# ------------------------------------------------
# 設定ファイルを読み込みます
# ------------------------------------------------
$RSSSS_PL = './rssss.pl';
# ------------------------------------------------
# 日本語コード変換ルーチンファイルの場所
# ------------------------------------------------
$JCODE_PL = './jcode.pl';
# ------------------------------------------------
# timelocal.pl ファイルの場所
# ------------------------------------------------
$TIMELOCAL_PL = './timelocal.pl';
# ------------------------------------------------
# バージョンアップ情報取得用ルーチンファイルの場所
# ------------------------------------------------
$VER_INFO_PL = './ver_info.pl';
# ------------------------------------------------
# このファイルの場所(URL)
# ------------------------------------------------
$FORM_ACTION = './safety.cgi';
############################################################
# 設定項目終了
############################################################
# ------------------------------------------------
# エラーチェック
# ------------------------------------------------
if( -f $RSSSS_PL ){
require $RSSSS_PL;
}else{
print "Content-type: text/html\r\n\r\n";
print <<__STRING__;
$RSSSS_PL ファイルが見つかりません
safety.cgi の実行には $RSSSS_PL が必要です
__STRING__
exit();
}
if( -f $JCODE_PL ){
require $JCODE_PL;
}else{
print "Content-type: text/html\r\n\r\n";
print <<__STRING__;
$JCODE_PL ファイルが見つかりません
safety.cgi の実行には $JCODE_PL が必要です
__STRING__
exit();
}
if( $NO_SOCKET == 0 ){
if( -f $VER_INFO_PL ){
require $VER_INFO_PL;
}else{
print "Content-type: text/html\r\n\r\n";
print <<__STRING__;
$VER_INFO_PL ファイルが見つかりません
safety.cgi の実行には $VER_INFO_PL が必要です
__STRING__
exit();
}
}
# ----------------------------------------------------------
# ベンチマークモードです。キャッシュ効果の測定にどうぞ(笑)
# ----------------------------------------------------------
# 左上に実行時間(秒数)が表示されるようになります。
# on:1 off:0
$CONF{BENCH} = 0;
$CONF{'SOCKET'} = $ver_info_required;
# -------------// バージョン告知用設定
$CONF{'THIS_VER'} = '1.2.3';
$CONF{'VER_HOST'} = 'www.acc.ne.jp';
$CONF{'VER_URI'} = '/~pastel/cgi-lab/.rssss_ver.txt';
$CONF{'USER_URI'} = '/~pastel/cgi-bin/rssss/rssss_url.cgi';
# -------------// Copyright
$COPYRIGHT = <<__STRING__;
- R&S Statistics Structure System -
__STRING__
# -----------// メインルーチン
&getdata;
&DATE;
$CONF{URL_LEN}= $FORM{URL_LEN} if $FORM{URL_LEN}; $CONF{URL_LEN}= 999 if $CONF{URL_LEN} >= 1000;
$CONF{ADDR_SHORT}= $FORM{ADDR_SHORT};
&make_file_name( $FORM{'YEAR'}, $FORM{'MON'} );
&set_agent_name;
if( $FORM{'VIEW'} ){
if( -f $TIMELOCAL_PL ){
require $TIMELOCAL_PL;
}else{
print "Content-type: text/html\r\n\r\n";
print <<__STRING__;
timelocal.pl ファイルが見つかりません
safety.cgi の実行には timelocal.pl が必要です
__STRING__
exit();
}
my $YEAR = $FORM{'YEAR'} -1900;
my $MON = $FORM{'MON'} -1;
my $MDAY = $FORM{'MDAY'};
my $MDAYz= $FORM{'MDAYz'};
$TIME_START = &timelocal( 0, 0, 0, $MDAY , $MON, $YEAR);
$TIME_END = &timelocal( 0, 0, 0, $MDAYz, $MON, $YEAR);
$TIME_END += 86400;
if( $TIME_START > $TIME_END ){
# 開始日〜終了日 を逆に入力してもちゃんと認識してあげる
$TIME_END -= 86400;
$TIME_START += 86400;
$TEMP = $TIME_END;
$TIME_END = $TIME_START;
$TIME_START = $TEMP;
}
}
$BENCH{'T_STR'} = time if $CONF{'BENCH'} == 1;
&read_data( 'AGE', $FILE_AGENT, 'agent' ) if $FORM{'AGE'};
&read_data( 'OS', $FILE_AGENT, 'agent' ) if $FORM{'OS'};
&read_data( 'KT', $FILE_AGENT, 'ktai_cut' ) if $FORM{'KT'};
&read_data( 'VER', $FILE_AGENT, 'agent_ver' ) if $FORM{'VER'};
&read_data( 'KEY', $FILE_KEY , 'keyword_cut' ) if $FORM{'KEY'};
&read_data( 'URL', $FILE_URL , 0 ) if $FORM{'URL'};
&read_data( 'HOS', $FILE_HOST , 'ppp_cut' ) if $FORM{'HOS'};
&read_data( 'CNT', $FILE_HOST , 'country_cut' ) if $FORM{'CNT'};
&log_count( $FILE_LOG ) if $FORM{'DAY'} || $FORM{'TIME'};
&read_cache( 'AGE' ) if $FORM{'AGE'};
&read_cache( 'OS' ) if $FORM{'OS'};
&read_cache( 'KT' ) if $FORM{'KT'};
&read_cache( 'VER' ) if $FORM{'VER'};
&read_cache( 'KEY' ) if $FORM{'KEY'};
&read_cache( 'URL' ) if $FORM{'URL'};
&read_cache( 'HOS' ) if $FORM{'HOS'};
&read_cache( 'CNT' ) if $FORM{'CNT'};
$BENCH{'T_END'} = time if $CONF{'BENCH'} == 1;
$BENCH{'T_ANS'} = $BENCH{'T_END'} - $BENCH{'T_STR'} if $CONF{'BENCH'} == 1;
if( $CONF{CACHE_USE} == 1 ){
&save_cache( 'AGE' ) if $FORM{'AGE'};
&save_cache( 'OS' ) if $FORM{'OS'};
&save_cache( 'KT' ) if $FORM{'KT'};
&save_cache( 'VER' ) if $FORM{'VER'};
&save_cache( 'KEY' ) if $FORM{'KEY'};
&save_cache( 'URL' ) if $FORM{'URL'};
&save_cache( 'HOS' ) if $FORM{'HOS'};
&save_cache( 'CNT' ) if $FORM{'CNT'};
}
if( $ENV{'HTTP_ACCEPT_ENCODING'}=~/gzip/ && $CONF{'GZIP'} == 1 ){
print "Content-type: text/html\r\n";
print "Content-encoding: gzip\r\n\r\n";
open(STDOUT,"| $CONF{'GZIP_PATH'}");
}else{
print "Content-type: text/html\r\n\r\n";
}
print <<__STRING__;
| VERSION INFORMATION | |
| このバージョン | $CONF{THIS_VER} |
| 最新バージョン | $INFO{VERSION} ($INFO{DATE}) |
| コメント | $INFO{MESS2} |
| コメント | $INFO{MESS1} |