• ベストアンサー

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

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

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

  • ベストアンサー
回答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勉強してみます!