IPドメイン来訪者ログ
( 貴方が自サイト内に無料で作れる来訪者解析ログ )
[ Ver 1.0 ]
by ip-domain-search.com
『my_log.cgi』の詳細説明とサンプル頁
CGIアプリは貴サイトに書かれた1行のタグから起動されます。
タグをコピーして貴サイトのHTML文の<BODY> 〜 </BODY> のどこかに貼り付けて下さい。
<IMG SRC="./my_log.cgi" width=1 height=1>
CGIアプリの動作機能は2種類あります。
【機能1】貴サイトへの来訪者のIPアドレス等の情報を得る
【機能2】来訪者情報のログを貴サイト内のTEXTファイルに記録する
『my_log.cgi』のサンプル
#!/usr/bin/perl
#
#
# ########################
# # (IPドメイン来訪者ログ) CGIアプリのサンプル (実行検証済)
# #########################
# by ip-domain-search.com
my $logfilnm = "./log.txt";
#ログのTEXTファイル名はご自由に変更できます。
# (属性:666に設定して下さい。)
print "Content-type: text/html\n\n"; # ヘッダー出力 for check
###############################
# 来訪者のIPアドレス等の情報を得る
###############################
my $r_addr = $ENV{'REMOTE_ADDR'}; #アクセス元のIPアドレス
my $user_agent = $ENV{'HTTP_USER_AGENT'}; #使用ブラウザ名とバージョン
my $log_data = "$r_addr,$user_agent,0\n"; #来訪者毎のログ内容(1行)
###############################
# 来訪者のログをTEXTファイルにセーブ
###############################
open(LOGFILE, ">> $logfilnm");
print LOGFILE $log_data;
close(LOGFILE);
exit(0);
上記の文をコピーして貴サイト内に my_log.cgi としてセーブして下さい。
セーブした my_log.cgi の属性を実行可の 755 として下さい。
CGIアプリと同じフォルダーに ログ用のTEXTファイル(log.txt)(中身は空or改行のみ)を作成して下さい。
セーブした log.txt の属性を書込可の 666 として下さい。
(なお、上記迄の説明が理解不能の場合は無理に挑戦しないで下さい。)
(注)
CGIアプリ(my_log.cgi)およびログ用TEXTファイル(log.txt)は
貴サイトのhtml文と同じフォルダーに置いて下さい。
別のフォルダーに置かれた場合は動作を保証できませんので、ご注意下さい。
(別のフォルダーの場合でも、十分のスキルをお持ちの方はご自由に自己責任で移動させて下さい。)
上級者用のオプションとして、もっと多くの情報を得る方法は
こちらの頁
で説明していますので、宜しければ参考にして下さい。
注意事項1
貴サイトがレンタルサーバーに置かれているのか、プロバイダーのHPスペース又はフリーのHPスペースに置かれているのか判りませんが、
業者によってはサイト内でのCGIアプリの稼動を拒否する所があるかも知れません。
その様な場合にはこのCGIアプリは動作しません。
CGI可?、PERL可?を業者にお確かめ下さい。
注意事項2
このCGIアプリはPERL言語で書いていますので、
その旨(PERL言語で書かれている事)を1行目に記載しています。
1行目の #!/usr/bin/perl がそれです。
この /usr/bin/perl が問題で、サーバー内のPERLプログラムの置かれた位置も指定する必要があります。
即ち、貴方のサイトがある(レンタルサーバー又はプロバイダーの)サーバー上のPERLプログラムの置かれたフォルダーを指定する必要があります。
これは業者によっては最初のご利用案内で知らせてくれているかも知れませんが、もし、案内が無ければ、ご自身で業者にお問い合わせをして頂く必要があります。
#!/usr/bin/perl 以外に置かれていそうな所は
#!/usr/sbin/perl
#!/usr/local/bin/perl
#!/usr/local/sbin/perl
#!/usr/libexec/bin/perl
#!/usr/libexec/sbin/perl
等々です。
正しく動作しない場合のチェックリスト
(A)貴サイトが置かれている業者はCGI不可ではありませんか?
不可なら X
(B)貴サイトが置かれている業者はPERL不可ではありませんか?
不可なら X
(C)貴サイトが置かれているフォルダーはCGI不可ではありませんか?
CGI可のフォルダー指定があるのなら ==>
タグの<IMG SRC="./my_log.cgi" の「./」 の部分を指定フォルダーに変更して、
『my_log.cgi』を指定フォルダーにセーブすればOKと思いますが。
当方は個々のサイトの指導教育は致しませんので、スキルのある方は試してみて下さい。
(D)貴サイトが置かれているフォルダーはPERL不可ではありませんか?
PERL可のフォルダー指定があるのなら ==>
タグの<IMG SRC="./my_log.cgi" の「./」 の部分を指定フォルダーに変更して、
『my_log.cgi』を指定フォルダーにセーブすればOKと思いますが。
当方は個々のサイトの指導教育は致しませんので、スキルのある方は試してみて下さい。
(E)CGIアプリの属性は実行可の755(推奨) (775,777) になっていますか?
必須です。ご確認下さい
(F)TEXTファイルはCGIアプリと同じフォルダーに在りますか?
必須です。ご確認下さい
(G)TEXTファイルの属性は書込可の 666 になっていますか?
必須です。ご確認下さい。
動作チェックのヒントは
テスト用のHTML文を作り、
<IMG SRC="./my_log.cgi" width=1 height=1>
の箇所を
<A HREF="./my_log.cgi" width=1 height=1>MY_LOG.CGI</A>
に変えてください。
ブラウザでテスト用のHTML文を見ると「MY_LOG.CGI」のリンクが表示される筈ですので、
それをクリックするとmy_log.cgiが動作します。
このときにブラウザが「ファイルが無い」等のエラーを表示する場合は
(1)my_log.cgi をセーブしたフォルダー と タグが 違っている
(2)CGIファイル名 が間違っている。
(3)my_log.cgiの属性が実行可:755 になっていない。
のどちらかです。
また、画面には何も出ない(正常)のに、log.txtに何も入っていない場合は、これも
(1)log.txt をセーブしたフォルダーが間違っている
(2)log.txtファイル名 が間違っている。
(3)log.txtの属性が書込可:666 になっていない。
のどちらかです。
もう少しで正しく動作します。
<A HREF="./my_log.cgi" width=1 height=1>MY_LOG.CGI</A>
で正しく動作すれば、
<IMG SRC="./my_log.cgi" width=1 height=1>
でも正しく動作します。
なお、CGIアプリ中の
print "Content-type: text/html\n\n"; # ヘッダー出力 for check
の行はチェック用HTML文(<A HREF=)を動作させる為に必要な行でした。
本番(<IMG SRC=)では不要ですので、以下の様にコメントアウトして頂いても差し支えありません。
#print "Content-type: text/html\n\n"; # ヘッダー出力 for check
動作不良が起こった場合は
Eメールでお知らせ下さいますようにお願い申し上げます。
Copyright(c)
{{year}}
ip-domain-search.com All rights reserved.