少し解らずらい内容なのですが・・すみません、教えてください。
実はアクセスログを設置し、運営しようかと思っております。
そのプログラムがフレームに対応していないとの回答(開発者)をいただき、一番初めに表示されるページにタグのリロードをつけ、そしてフレームページにジャンプさせる・・・、と考えておりました。が、エンドユーザー側がそのページにブックマークをつけると、次回は次のページからスタートしてしまい、正確なログが取れないという問題に直面しました。
図)
|-index.htm(ログ集計・・・リロードにてnext.htmへジャンプ)
|
|-next.htm(エンド側にてブックマークにすると、次回はnxet.htmからとなる)
で何かよい方法はないかと思い、相談しました。
例)
|-index.htm
| |-???.cgi
|
|-index.htm
とできれば、ブックマークをつけても、常にindex.htmとできるのですが・・・?
これは、cgiですか?javaですか?
あと、ソースを教えてください。
No.1
- 回答日時:
cgiでもjavaでもなく、HTMLでフレームきればいいのでは?
index.htmの内容を、
<html>
<frameset cols="0%,100%">
<frame src="ログを取るcgiのファイル(1)">
<frame src="実際に表示するファイル(2)">
</frameset>
</html>
とやれば、index.htmにアクセスしたときに(1)でログを取り、実際に表示されるのは(2)の画面。
後、画面遷移はそのまま(2)の画面の部分だけ移動するようにすれば、ログが二重に吐き出されることもありません。
(colsはrowsにしても同じです)
ただし、この方法だとURL表示はindex.htmlひとつだけになりますので、URL表示を変更したいという場合にはむきません。
この回答への補足
ありがとうございます。
index.htmの内容を
<html>
<frameset cols="0%,100%">
<frame src="ログを取るcgiのファイル(1)">・・・ue.htm
<frame src="実際に表示するファイル(2)"> ・・・shita.htm
</frameset>
</html>
ですよね。という事は、ue.htmでログを採取する記述を入れる・・・。
はい、やってみました。問題なく動作するのですが、
キーワードや直前のURLの情報が取れないんです。
上記の記述ですと、直前のURLが、index.htmとなってしまいます。
No.2
- 回答日時:
ユーザーズグループのASPメーリングとかD-HTMLメーリングの
活用をお勧めします。
プログラムの話は、何回かのやり取りも必要でしょう。
きっと参考になるはずです。
参考URL:http://www.users.gr.jp/
No.3
- 回答日時:
>上記の記述ですと、直前のURLが、index.htmとなってしまいます。
解析cgiのあるページを呼んでいるのはindex.htmですよね。
REFFERは直前に見ていたページが表示されるわけですから。:-)
フレームもしかり…なのかな?
フレームで問題がでるのなら index.htmはフレームもなにもきらない
構成にすればいいと思います。よくありますよね、入口ページ。
そこがブックマークされないと心配しているなら、ブックマークして
もらえるような工夫をすればいいだけのことです。更新情報を
載せるとか、絵描きさんなら新作は必ずそこに掲載してからにするとか。
一言日記を載せるとか。
技術技術だけじゃなくてちょっとした工夫だと思いますよ。
それでも私みたいに直接日記、掲示板にブックマークする人はいます(笑)。一番いいのはログを貰えるプロバイダを使うことです。
この回答への補足
アドバイス、ありがとうございました。
確かに・・・・と思うのですが、
困った事に、構造は変えなれないのです。
いやぁ・・・悩んでマス!
No.4
- 回答日時:
No.5ベストアンサー
- 回答日時:
cgiかJavaか?
これは問題ではないです。javaであってもかまわんです。ただ、javaをCGIとして使用している人は少ないとは思いますが。
リロード形式を今一歩補えばできないことはないですが・・・
Perlなどで、
$url[0] = 'http://*****/index.html';
$url[1] = '';
# ほかにあるなら…
$ENV{'HTTP_REFERER'}=~ s/%(..)/pack("C",hex($1))/eg;
if($ENV{'HTTP_REFERER'}){for(@url){if($_&&$ENV{'HTTP_REFERER'}=~ /^\Q$_\E/){$flag=1;last;}}}
if($flag==1){
#直前のページが指定された(トップの)URLだったので、どうやら、順調にはいってきたようだがなや。
すでにindexでアクセス解析してるはずなので、終了しようかいなこりゃ。
exit();
}
#どうやら、サイト外からご訪問なさった模様なので、ログ解析でもいっちょとったるかいなこりゃ。
#以下つらつらとログ解析プログラミングでもどっかからぺちってきてはっ付けとくがやさ。
あ、つらつらつらら。
お・わ・り。
これをindex.htmと、next.htmの両方から呼び出してしまえば良いんではないですかいな?
index→next.htmに来たときには、indexの時だけログ解析が行われる。next.htmでは直前がindexなのでexitし、ログ解析しません。
いきなりnext.htmに来たときには、直前がindexでないので、ログ解析が行われる。
ありがとうございました。
参考にさせていただいて、試しているのですが・・・。
はずかしながら、ど素人にはすごく難しいです。
もう少し教えていただけますか?
No.6
- 回答日時:
CGIとは,Webサーバプログラムと他のプログラムが協調動作するための仕組み。
JavaやPerlは,他のプログラムとして何を使っているかという事。
Javaに関していえば…
JavaはJavaAppletやCGIとして,Webに利用可能。
ログ回収CGIがnext.htmを吐くという方法もありますね。Perlならこんな感じ
##########################
binmode(STDOUT);
print "Content-type: text/html\r\n";
print "\r\n";
open(MAINHTML,"next.htm");
read(MAINHTML,$myMain,102400); #<-でかい数字で適当に読んでます。
print $myMain;
close(MAINHTML);
ご丁寧にありがとうございます。
色々と調べた結果、フレームに対応したアクセスログができる方法を探した方が良さそうな感じがします。
アクセス元のリモートホストやブラウザ、OS情報、解像度、検索キーワードなどが解析できるも。
ありがとうございました。
No.7
- 回答日時:
友人がちょうどログ解析をつけたというので,そのWebページの解析やっていたら,JavaScriptになかなか使えるプロパティがあることを発見。
######################################
<script language="JavaScript">
<!--
document.write('<img width=0 height=0 src="ログ解析CGI?refer='+document.referrer+'">);
-->
</SCRIPT>
<noscript>
<img width=0 height=0 src="ログ解析CGI?refer=NoJavaScript">
</noscript>
#######################################
JavaScriptを利用してForm type=GETと同じ形式でCGIにreferrerを渡す。
JavaScriptが利用できないときはreferrerあきらめる。
こんな形式で利用できるようにCGI改良すれば,CGI処理が遅くなっても,閲覧者はストレスなくWebの閲覧が可能。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Word(ワード) Word のマクロについての質問です。 ボタンを押すと登録したブックマーク先にジャンプする機能(リン 3 2023/08/16 12:17
- CGI (フリーの)ツリー掲示版CGI、昔は多用させてもらいましたが・・今セキュリティ上どうでしょう? 2 2023/06/25 07:18
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Amazon Amazonショッピングのアプリで中々サインイン出来なくて困っています。 メールアドレスとパスワード 1 2023/04/09 23:04
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- アプリ Edgeを操作するアプリについて 4 2023/05/11 22:48
- Word(ワード) WordからPDF保存した時の目次ジャンプ機能について 1 2022/06/10 10:59
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
- Chrome(クローム) Google Chrome の「拡張ブックマークを有効にする」の項目がどこにあるのか教えてください 2 2023/05/26 21:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
めちゃきれい
-
エクセルで集計したい。
-
フォームを再送信しますか?
-
(フリーの)ツリー掲示版CGI、...
-
CGIで出力するhtmlの<!DOCTYPE ...
-
ホームページにメールフォーム...
-
ホームページにCGIを設置したの...
-
cgiからsendmailを送信で文字化け
-
number 改行が追加できない
-
生成AI画像について
-
3DCG
-
cgi アクセス制限 エラー
-
CGIの記述について教えてくださ...
-
CGIの設置が分かりません・・・
-
ホームページにCGIを設置したの...
-
サーバーのエラーでおしえてく...
-
ホームページの事でおしえてく...
-
さくらサーバーにcgiフォームを...
-
ホームページでCGIのフォームを...
-
一番簡単なCGI,掲示板の設置教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
表示画面が真っ白になる場合、...
-
Yomi-Search CGIですが・・・
-
htmlにアクセスと同時に、あるC...
-
アクセスカウンターの設置
-
.htaccessを用いて.cgiを.html...
-
アクセスカウンター(counter.cg...
-
検索インデックスを複数指定し...
-
メールフォームのCGIでデータが...
-
IISのSSIの設定について
-
さくらインターネットのCGIの設...
-
private_htmlについて
-
ログインCGI設置での500エラー
-
CGIでコードがむきだしの状態で...
-
自社サーバー異常発生。CGIがポ...
-
1-man.netでメールフォームの設...
-
YY-BOARDについて
-
トップページにCGI
-
cgiもしくはJAVAなのでしょうか...
-
Forbiddenの意味
-
EXCELファイルに誰がアクセスし...
おすすめ情報