• ベストアンサー

おしえてgooの.phpと.jspについて

この教えてgooの仕組みが知りたいのですが、PHPとJSPはどういう機能をしているんですか? 宜しくお願いします!

  • aika25
  • お礼率49% (168/340)

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

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

全然ないと書いてあるので、超初歩的なものを。見るだけのホームページは、すべて、HTMLファイルで、ここに文章、ここに画像という風に書いてあり、見ることができません。JavaScriptをつかうと、多少変化がでますが。 では、たとえば、ここの掲示板を例にすると、 質問を書き、回答をする ボタンを押します。そうすると、  おしえてgooの.phpと.jspについて の専門のデータベースに私の回答がNo.5 として、追加されます。次に、ページを表示する時は、私の回答もありますよね。まー、そういう処理をするわけです。php は。 要するに、この場合は、データベースへの接続、私の回答の追加、新しく私の回答が追加された、HTMLファイルの生成という1連の作業をします。これが、サーバ側の処理です。 以下に、jspのサンプルコードの載ったページを紹介しますので、どのようにして、HTMLファイルが生成されているかを見ると、具体的なイメージが以前よりは沸くと思います。ちなみに、参考までに、サーブレットでは、out.println("<title>JAVA<title>");のようにすると生成されるHTMLファイルのタイトルが、JAVAになります。Javaアプリケーションを作る時、System.out.println("あいうえお");と同じ原理ですね。 cgiも、jsp も、同じように、どのように、HTMLファイルを生成するか?というのが、基本的な処理です。では、頑張って下さい。 cgiや、php、rubyは、スクリプト言語といって、簡単な言語です。では。

参考URL:
http://www5.big.or.jp/~tera/Labo/JSP/Basic3.html

その他の回答 (4)

  • wolfwood
  • ベストアンサー率50% (199/398)
回答No.4

CGI(Common Gateway Interface)はWEB(HP)の動きをサーバ側で処理する(制御する)仕組みです。 例えば、掲示板やチャットはよくCGIで処理されています。 打ち込んだ文章を送受信したり、その文章をファイルに保存したり、HTMLを生成して動的なページを表示できます。 CGIは主にPerlという言語で作られています。(他にはC言語などがあります。) JSP、PHPというのはそのCGIと同じ働きをしています。 特徴としては、PHPはデータベースとの連携が容易に出来、また、言語も難しくありません。結構作りやすいと思います。 JSPはJava Server Pageの略でHTMLにJAVAの処理を組み込んだものです。 ただし、JSPはサーバ側の処理を同じJAVAで作られたservletというプログラムとに分けてJSPは表示の部分のみという場合が多いです。 また、WINDOWS系のサーバならASPというVBScriptを用いたCGIに似た仕組みがあります。 結局、どれを用いても同じようなシステムを作ることは可能です。 ただ、開発しやすさ、メンテナンスのしさすさ、セキュリティなどから使う言語が変わってきます。 教えて!gooのシステムとしてはgooサイトそのものの骨格となるシステムはJAVA(JSP、Servlet)だと思われます。 そこで各コンテンツのトップやそれに近い階層ではJSPを使いそれ以降は各コンテンツごとに違っています。 教えて!gooのログイン画面はJSPで作られていますが、処理を行っているのはCGIのようです。ソースを見てみると解りますよ。 そして、質問、回答の表示、投稿など主な部分はPHPで作られているようです。 (gooサイトの骨格がJAVA(JSP、Servlet)だというのは憶測です。各コンテンツへのリンクの部分ではASPが使われてるようなので自信がないです・・・) 初心者なら簡単なPerlのCGIやPHPを勉強してみると仕組みが解りやすいと思います。

回答No.3

あくまで、想像ですが、jspの方はただ単にリンクページで使われてます。 トップページと、カテゴリー一覧のページに使われています。 んで、phpの方は、今日の質問、ランキング、マイページに使われています。 両者の違いは、データベースを使うか使わないかだと思います。jspもphpもデータベースは使えるのですが、 phpの方は、言語が単純なので、phpでもいいところは、phpを使っているのでしょう。 あくまで、想像なんですが。。。

  • vaice
  • ベストアンサー率26% (89/340)
回答No.2

「「教えてgoo」はどんなソフトウェアを使っているのでしょうか?」なんて質問がありました。参考までに。 http://www.okweb.ne.jp/kotaeru.php3?q=215498

参考URL:
http://www.okweb.ne.jp/kotaeru.php3?q=215498
noname#2494
noname#2494
回答No.1

サーバー側での処理を行っています。 cgi (perl)と言うのをご存じですか? もし知っていれば話は早いです。出来る内容としては、それとほとんど代わりはありません。 javascript等との違いは、データをみんなで共有出来ることです。(例えば、今私がこれを書いたら、aika25さんにも私が書いた物が読めます。javascriptではこれは出来ません) どの程度の知識をお持ちなのか分からないので、簡単に説明しましたが、分からないこと、もっと詳しく知りたい箇所があれば言ってください。

aika25
質問者

補足

知識的にはぜんぜんありません・・・。最近Javaをかじったくらいです。 でもこういう教えてgooみたいなシステムに興味があって、 似たようなものを作ってみたいんです。 cgiの仕組みがいまいちわからないのでまずそこが知りたいです。σ(^^) あと、回答がきたときにメールで知らせるというような仕組みと、 ログイン/ログアウトする仕組み、もうひとつは検索する仕組みが知りたいです! 宜しくお願いしますσ(^^)

関連するQ&A

  • php3とjspとは?

    最近OKwebが重くて日々イラついてます。 さておきOKwebのtopのURLは http://www.okweb.ne.jp/index.php3 ですが、提携サイトのgooのURLは http://oshiete.goo.ne.jp/jsp/oshiete_top.jsp と、末尾の拡張子(URLでも拡張子というのか?)がphp3とjspで違ってます。 これはそれぞれ全く違う処理のCGIを組んでる感じなんでしょうか? OKwebはやたら重いのにgoo側はぜんぜん問題ないのはここらへんと関係あるんでしょうか?

    • ベストアンサー
    • CGI
  • PHPとJSPのパフォーマンス

    JSPとPHPでどちらかでシステム構築するか迷っているのですが、皆さんのご意見を聞かせてください。 パフォーマンスについては一般的にJSPの方がすぐれているといいますが、私が実際に勉強した限りではPHPの方が高速だと感じました。 実際に、FireFoxのFasterfoxという拡張機能で測定したところPHPの方が高速でした。 CPUの使用率に関してはさほど差はでませんでした。 メモリを変えてみての速度もさほど差はでませんでした。 PHPに比べてのJSPはどのような点でパフォーマンスが優れているのですか? ちなみにシステムには無線LANを使わなくてはなりません。

    • ベストアンサー
    • PHP
  • PHPとJSPは同じような位置付け

    にあると思いますが JSPよりPHPを使うメリット PHPよりJSPを使うメリットを教えてください どちらがどんなプログラムを作るのに適しているのでしょうか?

    • ベストアンサー
    • PHP
  • PHPでJSPのインクルード方法

    PHPの知識が全く無く、教えて頂きたいのですが、 今PHPファイルでJSPファイルを以下のようにincludeしようとしています。 ※以下のURLは例です。 <?php require_once ("http://www.test.jp/hoge/test.jsp"); ?> このtest.jspにはログイン情報が記載されており、 このURLを開くと、サイトをログインしていなければ、'ログイン前'、 ログインしていれば'ログイン後'と出るようになっています。 このtest.jspを取得して、ログイン前と後で要素の出し分けをしようと しているのですが、ログインしていても'ログイン前'と出てしまっていて どう対応すれば良いかわからず、ご教示願えたらと思います。 PHPは全くの初心者で知識が無いので、 お手数ですが、お力を貸してください。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • JSPでできること

    JSPって、実際サーバー側でどういうことをしているのですか?JSPを辞典で調べてもよくわかりません・・・。JSPを使ったシステムの例をたくさん知りたいですσ(^^) ちなみに教えてgooの新しい回答がきたらメールで知らせてほしいってあるじゃないですか、メールを自動的に送っているのはJSPですか? 宜しくお願いしますσ(^^)

    • ベストアンサー
    • Java
  • PHPとASPとJSPのメリット デメリットをおしえて

    PHPとASPとJSPのメリット デメリットを教えて下さい よろしくお願いいたします

    • ベストアンサー
    • PHP
  • jspのスピードは?

    お疲れ様です。 jspは一回compileされてから動くので、 html,php,perlなどより重いし、遅いと聞きましたが、 本当ですか。 本当なら、strutsもjspを使うからstrutsも遅いですか。 phpと比べて遅いですか。 本当なら。。 jspを使わなくてもウェッブアプリケーションが 作れるフレームワークを紹介して頂きたいですが。。 宜しくお願い致します。

    • ベストアンサー
    • Java
  • jspとはなにか?

    jspがよくわかりません。 サイトにはjspはサーバ側でなんらかの処理をしてhtmlを返すと書いていました。 そしてサンプルとして以下のようなコードがのっていました。 1: <html> 2: <head><title>Hello World!</title></head> 3: <body> 4: <h1>Hello World!</h1> 5: <p> 6: <% 7: String hello = "Hello World!";//ここはJSPの処理 8: out.println(hello); 9: %> 10: </p> 11: </body> 12: </html> ためしにこのソースでhtmlを作ってダブルクリックした(つまり、Tomcat等のサーバをつかわなかった)ところ、画面にhello Worldが表示されました。しかし私はこの現象がよく理解できません。 jspはサーバ側でうまいこと解釈して、そこから作成されたhtmlをクライアントに送ってくる仕組みなのなら、jspを直接ブラウザに読み込ませてもブラウザが理解できるとおもえません。 なぜこのようなことができるのでしょうか?

    • ベストアンサー
    • Java
  • JSPとは凄いのか?SEO的には?

    これからプログラム未経験の私がJAVAを習います。不安で一杯ですが、将来性があるとのこと。そこで質問ですが、 1)jsp というのはPHPに比べて何か良い点があるのですか? 2)PHPが無料というは聞いたのですが、javaも無料なのですか? 3)JSPで作られたwebをあまり見ませんが、SEO的にはあまり良くないのですか? 4)javaをプログラムの最初に習うのはどう思われますか? 5)プログラム初心者に対してのお奨めの書籍などありますか? いろいろ書いてすみません。今後とも宜しくお願いいたします。

    • ベストアンサー
    • Java
  • JSP での exit? (スクリプトからの抜け方)

    現在、Linux 上の JRun の評価をしているのですが、JSP の動きで悩んでいる部分があります。 PHP や、perl などでは、 exit; とすれば、そこで処理を終えてスクリプトを抜けることができますが、JSP ではどういった方法で処理を終えればよいのでしょう? System.exit(1); では、JRun の対象サーバごと(!) exit してしまいますし、いきなり return; を書くと、抜けることができたのですが、 try {} catch (){} では、機能してくれません。。。 みなさん、 if (flag){ exit(1); } のような処理はどうされているのでしょう?

    • ベストアンサー
    • Java

専門家に質問してみよう