• ベストアンサー

ページファイルが見当たらない

知識がないのですが、CGIの使用されている既存のWebサイトのレイアウトを変更したいのですが、index.html以外のページファイルが見当たらずリンクのURLを見るとcgi-binの中のcategoryとpageが指定されているのでそこにあるのかなと思うのですが、見当たりません(というかわかりません)。 要はそのURLのページのHTMLをいじりたいのですが、CGIの知識がないとだめですか?またはこの作業はCGIの方にもなんらかの変更作業がいるんでしょうか? とても困ってます。

  • CGI
  • 回答数2
  • ありがとう数9

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

通常、アクセス解析などではimgタグなどでcgiを呼び出すので単なるhtmlでも問題ありません。 cgiが使われるは動的なデータを表示する必要がある場合が多いです。 例えばデータベースなどからデータを読み込む必要があるページなどです。 このQ&Aサイトもデータベースとデータを読み出すPHPで構成されいます。 ホームページ全体がwiki風だったりブログ風になっていて簡単に記事やページの作成が出来るようにCGIを使用している場合もあります。 categoryやpegeなどの引数があるようなのでおそらくブログCGIなどで簡単に記事の追加や編集ができるようになっているのでしょう。 製作会社しかしらない管理ページがあり、そこから更新が簡単に出来るようになっているんだと思いますよ。

take-r2d2
質問者

お礼

たびたびのご回答ありがとうございます。 納得がいきました。 今までは、サイトを制作してもらった制作会社さんのオリジナル更新ソフトを使用してサイトを更新してきたのでそのためのCGIだったんだと思います。ちなみにアクセス解析もそのオリジナルソフトのツールの一つとして使用する形なのでその解析ツールはもう使えなさそうですね。 何度も丁寧に説明いただきありがとうございました。

その他の回答 (1)

回答No.1

そのCGIがどういう作りになっているかはわかりませんがある程度CGIが読める知識が必要でしょう。 通常はCGIプログラム自体がHTMLデータを生成してブラウザに表示する仕組みです。 CGIのプログラム内でHTMLを書いていますのでCGI自体を変更する必要があると思います。 またHTMLテンプレートのファイルを読み込んでCGI側でデータを埋め込んで表示している場合もありますが、 この場合はHTMLテンプレートを編集するだけでデザインの変更などは可能なはずです。 categoryとかpageとかが指定されている…というのは cgi-bin/???.cgi&category=news&page=12 みたいになっているのでは? これはCGIプログラムに渡す引数という物でCGIプログラムに動作を設定する物です。 「categoryがnewsでpageが12」という命令をCGIに渡し、CGIがそれに応じた結果をHTMLにしてブラウザに表示させます。 なのでcategoryやらpageやらというファイルやフォルダがあるわけではありません。

take-r2d2
質問者

お礼

ご回答ありがとうございます。 なるほど!そんな仕組みなんですね。 それを踏まえてもう一つ疑問が湧いたのですが教えていただきたいのですが、 私の感覚では、Webサイトのお問い合わせページ等にCGIが使われているという感覚なんですが、どうもindex.html以外の全てのページがCGIがかんでる感じで、なんでわざわざこういう作りにしているのかよくわかりません。元々は外部の制作会社が制作したもので、勘ぐるところではそこが提供しているアクセス解析ツールを使用しているからとか自分たちで簡単に変更できないようにするためとかそんな理由があったりするのかなと思うのですが...。 宜しくお願いします。 ※CGI勉強してみます!

関連するQ&A

  • データベースにアクセスするWebページ

    どちらに質問してよいかわからずこちらに質問させていただきます。 私が担当しているのは、既に公開されているWebページの変更です。 写真や文字列など、変更があるたびにHTMLファイルを開いて 手作業で更新作業をしているところに、データベースにアクセスして データベースの情報を表示するように変更することになりました。(←ここが私の担当です) ※既存のWebページは私が制作したものではありません。 「困っているのは既存のWebページへの実装方法」で、 既に試した方法は 1. データベースの情報を表示する箇所を、まるまる   別HTMLで作成し、JavaScriptでajax通信にて動的に項目を作成するページをつくって   IFRAMEにて既存のページに埋め込む方法をしてみました。   見事動作したのですがこれには問題点がありました。   それは私が実装したIFRAMEの中のHTMLは、JavaScriptが読めない人には   扱えないということでした。   また、JavaScriptだけでなく、CSSも既存ページに合わせて作り直す必要もあり、   他のページに同じようにデータベースの内容を表示して!と言われたら大変な手間がかかります。 2. 既存のHTMLファイルにオリジナルのスクリプトを埋め込む方法。   たとえば<span>#todays_news;</span>のような感じです。      この方法で記述して、http://xxx.jp/解析.php?url=HTMLファイル   にアクセスすると解析.phpがオリジナルスクリプトの埋め込まれたHTMLファイル内の   スクリプトを、データベースから取得したデータに置き換えて出力します。   これの問題点は   サイトのindexからリンクをクリックしてもらえれば解析.phpを通して   データベースの内容で置き換えたページが出力されますが、   直接、HTMLファイルへアクセスされるとオリジナルスクリプトが丸見えになってしまいます。   またSEO対策で不利になるのではと考えています。 そこで、データベースの内容を変更すると、すべてのHTMLファイルを解析.phpに通して出力してしまおう、という考えです。しかしこれだとデータベースの内容を変更するたびすべてのHTMLを書き換えることになり、なんとも効率的ではない気がするのです。 データベースの内容を表示するのに、 HTMLをロードしてからJavaScriptにて動的にコンテンツを生成するのか、 なにかしらの方法で、データベースの内容を反映させたHTMLファイル(静的)を置くのか はたまた、違う方法なのか、 とーっても悩んでおります;;;;;;;; 職場にはJavaScriptやPHP,MySQL等を理解しているものはおらず、 だれにも聞けなくてここで質問させていただきました。 どうかアドバイスお願いいたします><。

  • ファイルアップローダーの設置ができません。どこがおかしいのでしょうか?

    OSはVistaで、FlashMXを使ってIswebベーシック上で、HP作成中の超初心者です。 http://flashrave.org/index.html ここのファイルアップローダーの設置をしたいのですが、どうしてもできません。 cgi-binにフォルダfuploadeを作成し、以下のようにUPしました。 +-- fuploader [755]       ├ file.dat [666]       ├ index.html [644]       ├ index.swf [644]       ├ jcode.pl [644]       └ login.cgi [755] この状態で  http://***.web.infoseek.co.jp/fuploader/index.html にアクセスし  ログインすると アップロード後、「(転送しました。」の画面が表示されました。 (実際に転送されたかは、不明です。)  ファイルダウンロードができません。 Iswebベーシックでは Cgi-bin にすべてを入れること禁止しています。 そこで、次の構成でUPしました。 +-- cgi-bin        fuploader       ├ file.dat [666]       ├ jcode.pl [644]       └ login.cgi[755] public_html (ue.html sita.htmlの上下のフレームページ)   |   +-- fuploader              ├ index.html       └ index.swf        この状態で  http://***.web.infoseek.co.jp/fuploader/index.html にアクセスすると ログインページがでますが、ログインできません。 CGIが動作する場所とアップロード先のフォルダを分けたいので (58行目) $datadir = ""; の""の間にディレクトパスを (60行目) $url = ""; の""の間に設置したURLを設定してください。 の指示どおり login.cgiを次のように変更してUPしましたが、できません。 $datadir = './cgi-bin/fuploader'; $url = 'http://***.web.infoseek.co.jp/fuploader'; 作成者にメールしましたが回答いただけません。どうか助けてください。

    • ベストアンサー
    • Flash
  • CGIカウンタを別のページに設置

    http://www.kent-web.com/様のhttp://www.kent-web.com/count/ecount.htmlを利用しています。 現在はINDEXにカウンタを設置していますが、この度同一サイト内のひとつ下の階層に新たなカテゴリのページを作ったので、そこのページを訪れた人の人数が把握できるように、ここにも同じカウンタを付けようと思ったのですが上手くいきません。 まずは単純に設置してみたら、全く同じINDEXページにあるカウンタと連動するカウンタができてしまったので、ディレクトリ名をcgi-binからcgi-bin2に変えたりecount.cgiの内容をすこしずついじってみましたがうまく反映しません。 具体的にどこをどう改変すればいいのでしょうか。 なにぶん初心者のため、この説明もやっていることもおかしいことが多いと思うのですがお助けください。

    • 締切済み
    • CGI
  • トップページにあたるindex.htmlについて

    トップページにあたるindex.htmlについて カテゴリが違うかもしれないですが 今借りてるサーバーはpublic_htmlディレクトリが設けてあるのですが、 この場合CGIを設置する際はcgi-binディレクトリという風に別けられていると思いますが トップページであるindex.htmlは必ずpublic_htmlディレクトリに設置する必要があるのでしょうか? トップページであるindex.htmlをcgi-binディレクトリに設置することはできないのでしょうか? もし、public_htmlディレクトリの中にindex.htmlが必要な場合どの様な形でもいいのか 例えば10秒後にジャンプします。など

    • ベストアンサー
    • CGI
  • 動的ページについて

    JUGEMでブログを開設しているのですが、カテゴリーや各記事のURLが動的ページらしいのですが SEO対策についての本を読むと動的ページはロボット型検索のスパイダーが巡回しないから、使わないほうがいいとあります そして、動的ページのURLをできるだけシンプルにすると(パラメーターをひとつにする)ほとんどの場合巡回するはずだとしている本もあります URLのパラメーターがシンプルなら検索をされるのでしょうか(例としてhttp://***.jugem.jp/?eid=130という感じのURLなんですが) また静的ページから動的ページにリンクすれば巡回される可能性が高くなるともあるので、HTMLのフッター にカテゴリーのURLリンクを加えたのですが、これで静的ページから動的ページにリンクしたことになるのでしょうか

  • infoseekでのCGI掲載方法

    INFOSEEKにCGIをのせるにはまずcgi-binというフォルダを作成しなければいけませんよね? そのcgi-binのフォルダの中にcgiを入れる必要があるのはわかるのですが、そのcgi-binのフォルダの中にまたフォルダを作る必要はあるのでしょうか?作らなくても動きますか? また、cgiのファイルにリンクさせるにはファイルの参照はファイル名でいいのでしょうか?それともURLでリンクさせるのでしょうか? このページにアクセスできません。(403 Forbidden) と出てきて困っています。 パーミッションは設定してあり、indexはちゃんとあります。 どなたか教えてください。

  • 該当ページに直アクセスさせない様にTOPページを踏ませるには?

    具体的に例をあげますと、 A.html と index.html の2つページがあります。 A.htmlへ遷移する為には index.html の「Aへ行く」のリンクを 踏んでから遷移させたいです。 検索エンジンや、紹介サイトからの直接の A.html へのアクセスを遮断したいのです。 CGIを使えば出来るというような事は調べて分かったのですが、 当方CGIの知識も無く、現在使用している無料サーバーがCGIを禁止しています。 HTMLかJavaScriptを使って、このような仕組みを作る事は可能でしょうか? もしそれが不可能だとして、CGIを使うにしても簡単に出来るような方法はありますでしょうか? お詳しい方いらっしゃいましたら、どうかご教示宜しくお願い致します。

    • ベストアンサー
    • HTML
  • トップページHTMLに更新日を自動的にさせる方法を探しています。

    トップページHTML ┣HTML1 |┗…HTML2 ┣HTML3 ┣CGI1 |┗…HTML4 ┗CGI2 …┗…DATA1 トップページHTMLに更新日を自動的にさせる方法を探しています。 HTML1にはHTML2のリンクが張ってあります。 HTML3はそのものを変更しています。 CGI1はHTML4のテンプレートを使って変更しています。 CGI2はDATA1に更新データを書き込んでいます。 トップページで表示させたい更新は ・HTML2 ・HTML3 ・CGI1 ・CGI2 以上の4つです。 ジャバスクリプトでもCGIでも何でも方法は問いません。

    • ベストアンサー
    • HTML
  • 特定ページからのリンク

    こんにちは。 HTMLで出来るのか、javaなのか、 CGIなのか、FLASHなのかすらもわからないのですが、質問させてください。 特定ページからのリンクをたどらないと ページを表示させようした時に 「入り口から入ってください」とか 「404」になったりするサイトさんがあります。 サイト内リンクに限り可にしている可能性もあるかなと思います。 それを実行したいのですが、方法がわからず調べようがありません。 忍者のツールでそのようなものもあるのですが いくつかみたサイトさんではそのような感じではありませんでした。 またこちらのサイトさんは、強制的にindexに飛ぶようになっています。このような方法でもかまいません。 http://frank-web.net/item/icon.htm 方法をご存知の方がいらっしゃいましたら 教えてください。 よろしくお願いいたします。

  • フレームセットのリンクを変更する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

専門家に質問してみよう