• ベストアンサー

cgiもしくはJAVAなのでしょうか・・・?困ってます!!

noname#1785の回答

noname#1785
noname#1785
回答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表示を変更したいという場合にはむきません。

_duke_
質問者

補足

ありがとうございます。 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となってしまいます。

関連するQ&A

  • これはcgiですか?javaですか?

    少し解らずらい内容なのですが・・すみません、教えてください。 実はアクセスログを設置し、運営しようかと思っております。 そのプログラムがフレームに対応していないとの回答(開発者)をいただき、一番初めに表示されるページにタグのリロードをつけ、そしてフレームページにジャンプさせる・・・、と考えておりました。が、エンドユーザー側がそのページにブックマークをつけると、次回は次のページからスタートしてしまい、正確なログが取れないという問題に直面しました。 図) |-index.htm(ログ集計・・・リロードにてnext.htmへジャンプ) | |-next.htm(エンド側にてブックマークにすると、次回はnxet.htmからとなる) で何かよい方法はないかと思い、相談しました。 例) |-index.htm |  |-???.cgi | |-index.htm とできれば、ブックマークをつけても、常にindex.htmとできるのですが・・・? これは、cgiですか?javaですか? あと、ソースを教えてください。

  • CGI用直リンク防止プログラムについて(トップがフレームでCGI表示の場合)

    質問させて頂きます。 二分割のフレーム構成でのサイトですが、左にメニュー、そして右にCGIを表示させています。(index.htmはフレームなしの一枚ペラで、そこをクリックするとコンテンツのフレームページ、cont.htmにいくようになっています) CGIには直リンクを防止する為、KEEPOUT(http://cgiroom.nu/list/level_up/keepout/readme.htm)という直リンク防止CGIを仕込んであるのですが、フレーム構成でいきなりCGIを表示させている為か、index.htmからcont.htmという正規ルートを辿っても、直リンクだと判断されてindex.htmに戻されてしまうのです。 それでフレームという概念をぼかす為にCGIの前にrefresh.htmを設けて、カウント0で瞬時にCGIに行くようにしたところ、ある程度のバージョンのIEなら弾かれなくなりましたが、IE5.1以下はやはりindexに戻ってしまいます。現在は6か7が主流なので別にいいかとも思ったのですが、クラシックMacのユーザーは5.1を使っている方がまだ割といらっしゃると聞いたので、どうにか5.1でも弾かれないようにしたいのです。 どなたかお知恵を貸して頂けないでしょうか。宜しくお願い致します。(ちなみにネスケでは全部弾かれますが、諦めています)

    • 締切済み
    • CGI
  • フレームセットのリンクを変更するCGI

    フレームセットを利用していると直リンクされると、レイアウトが崩れて嫌なので普段はJavaScriptで <body onLoad="if (top == self) { location.replace('index.html') };"> このタグで強制的にフレームセットのページであるindex.htmlにリロードしています。 でも、この場合だとindex.htmlにフレーム設定をしているA.htmlとB.htmlしか表示できません。 これを、直リンクされた場合に強制的にindex.htmlに飛んで、さらにフレームセットのページをA.htmlとC.html(直リンクされたページ)に変更させたいのです。 index.htmlを表示させた後、C.html(直リンクされたページ)のアドレスを取得してフレームセットを書き直すCGIなのだと思いますが、このようなCGIのフリーなどありましたら教えてください。 JavaScriptとCGIの混合技らしいので、JavaScriptカテゴリにも書き込んでおります。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=745359

    • ベストアンサー
    • CGI
  • トップページにCGI

    トップページにCGIを使ったらアドレスの最後が /index.cgi になるじゃないですか、それを /index.html にしたいのですがどうすればいいのですか? フレームを使うやり方は知っているのですが それ以外の方法があれば教えてください。

    • ベストアンサー
    • CGI
  • CGIだとうまくいかない!

    まずは下記ソースをご覧ください。 これを実行させると上下2のフレームができまして、上フレームにある「Jump C」と いうリンクをクリックすると、下フレームが「ccccccccc」というところまでジャンプ するように作りました。 まずは実験版としてCGIでなくPC上でHTMLファイルを作成(main.cgiがmain.htmになる) しました。その時はうまく下フレームの「cccccccc」までジャンプしたのですが、これを CGIに作り直して実行させたところ、何も動作しないままでした。 CGIでもHTML上同様の動きをさせるにはどのようにしたらよろしいでしょうか? どなたかご存知の方いましたら、ご鞭撻のほどお願い致します。 -------------- main.cgi ------------------------------------- <HTML> <HEAD><TITLE>フレームテスト</TITLE></HEAD> <FRAMESET ROWS="20%,*"> <FRAME SRC="top.cgi" NAME="FRAME2"> <FRAME SRC="btm.cgi" NAME="FRAME3"> </FRAMESET> </HTML> -------------- top.cgi ------------------------------------- <HTML> <head> </head> <body> <a href="right_btm.cgi#c" target="FRAME3">Jump C</a> </body> </html> -------------- btm.cgi ------------------------------------- <HTML> <head> </head> <body> <A NAME="#a">aaaaaaaaa<br><br><br><br><br><br><br><br><br> <A NAME="#b">bbbbbbbbb<br><br><br><br><br><br><br><br><br> <A NAME="#c">ccccccccc<br><br><br><br><br><br><br><br><br> <A NAME="#d">ddddddddddd<br><br><br><br><br><br><br><br><br> </body> </html> ------------------------------------------------------------ このCGIを実行すると、

  • CGI(BBS)の設置が出来ません(2)

    --------------------↓ # ログディレクトリ (フルパスだと / から) $log_dir = "."; ↑これは「/bbs.log」と入れるのでしょうか? ちなみに上記全ての書類はcgi-binで同階層です。 # 表示ファイルディレクトリ (フルパスだと / から) $htm_dir = "."; ↑これもよく分かりません。 # CGIスクリプト自身をURLで指定 $script = "http://www.●●●.ne.jp/cgi-bin/lomobbs.cgi"; ↑の様に入れましたが合っていますでしょうか? # 表示ファイル (index.html) のある「ディレクトリ」をURLで指定 $htm_url = "http://www.●●●.ne.jp/cgi-bin"; # ログファイル名 $logfile = "bbs.log"; # ロックファイル名 $lockfile = './bbs.lock'; # 過去ログのあるディレクトリ (フルパスだと / から) $past_dir = "."; # 補助プログラムのファイル名 $subfile = './bbs2.cgi'; ---------------------------- 以上、アヤシイ個所を書いてみました。 おかしな個所があれば教えてください。 ちなみに、DLしたcgiの書類名を変更したのですが、 それは何か影響はありますか? いくらやり直してもページが表示されません。

    • 締切済み
    • CGI
  • アクセス制限cgiを探しています

    Javascriptを無効にしている閲覧者が勝手にパスをたどっていったり、ブックマークして欲しくないページをブックマークしてそこから毎回閲覧されることを防ぎたいのです。 JavascriptだけならReferrerを調べればできると思いますが、Javascriptを無効にしている閲覧者を正規のルートから入ってもらうために必要なのです。 具体的には index.html → toppage.html → page1.html, page2.html となるのですが、 page1.htmlをブックマークされていると、いきなり index.html,toppage.htmlやらを飛ばしてpage1.htmlから入ってしまいます。 何かよいCGI有りますでしょうか? できれば、ページに記述するタイプがあれば嬉しいですね。 ちなみに、index.html,toppage.html,page1.html,... は全て同じ階層に有ります。

    • 締切済み
    • CGI
  • アクセス・ログ用CGIをHTMLから自動起動する方法は?

    ホームページ・アクセスログ用のCGI(実際はjavaサーブレット)を作ったのですが、トップページをアクセスした時に、このCGIを自動的に呼び出すようにトップページのHTMLを修正したいのですが、どうしたら呼び出せるのかがわかり ません。 ・ホームページとCGIのサーバーは別です。 ・このCGI自体はブラウザ側に特に返す内容はありません。必要であれば返しても良いですが。 ・HTMLだけでは無理であれば、javascriptを使っても良いです。 普通はどうしてるのでしょうかね?

  • CGIでのtarget指定について

    CGI初心者です。 下記図のようなイメージでhtmとcgiを組み合わせて表示させたいと考えています。 index.htm | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|←bunner.htm |  ̄ ̄ ̄| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| |      |                    | |      |                    | |      |                    | |      |                    | |      |                    | |      |                    | |      |                    | |      |                    | | ___|_____________|  ↑ menu.cgi       ↑mein.htm index.htmにFRAMEタグを使用して表示させています。 menu.cgiに固定リンクを表示し、リンクをクリックした時にtarget指定でmein.htmに表示させたいです。 IE6では上手くいったのですが、IE7以降で試した場合、新規ウインドウでリンクが開かれてしまいます。(target=_blankと同じ動きです) ちなみにFireFoxでは新規タブに表示されます。 html形式の時点では問題なくできるようなので、恐らくcgiが絡んでいるのが原因だと考えています。 そもそもこのような作り方が問題なのでしょうか? menu.cgiに当たる部分は、固定リンクの他にテキストファイルを読み出して表示させるような可変リンクを表示したい部分もあるのですが、回避方法が見付からなく困っています。 どうか、お力添え宜しくお願いします。

    • ベストアンサー
    • CGI
  • リンク元を調べるCGIの作り方で悩んでいます

    はじめまして。Perl暦1ヶ月の者です。 自分のサイトのリンク元を調べるCGIを設置しようと思いますがどんな方法があるでしょうか。 私が調べた方法は、 1.CGI+SSIを利用 2.CGI+インラインフレームを利用 ですが、1.は各ページに <!--#exec cgi="○○.cgi"--> を入れてCGIを起動させるわけですが、全ページが.shtmlとなってしまい抵抗を感じます。.htm → .shtmlと変わることにより当分検索順位が下がるかもしれません。 それで2.を試しました。通常ページ page1.htm にインラインフレームで○○.cgiを埋め込み、ここでカウンターを表示させるとともにログを取得しようと思ったのです。しかしHTTP_REFERERが取得してくれるリンク元はあくまで「page1.htm」ですので役に立ちません。 最も一般的な方法はどのようなものでしょう?詳しい方よろしくお願いいたします。m(_"_)m *できればコードを丸ごと教えていただけると助かります。 ↓作成の条件です↓ ・一般ページはあくまで.htm にしたい。 ・レンタルサーバー屋はSSIは.shtmlと言っている。 ・リンク元一覧は一般ページには表示しない。 ・全ページの外部リンク元を知りたい。

    • ベストアンサー
    • Perl