こんにちわ。
ASP超超超~~~~初心者の者です。

HPで良く見られると思いますが、
フォームをメールで送信をASPを使って記述しています。
同じアクションをCGIで書かれているページもありますよね?
その他、カウンターやBBSなどもASPでありますよね?

ASPとCGIの違いは何なんでしょうか?
CGIよりASPの方が利点があるのでしょうか?
また、セキュリティ―面ですが、フォームなどCGIやASPを使うことによって
個人情報を守る事ができるのですか?

すみません。とても初歩的な質問で・・・・
お時間があるときで結構ですので、コメントいただければ嬉しいです。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

ASPとCGIの違いを少ない言葉で表すのは難しいですが、無理やり言えば、ASPはWindowsサーバーのHPで使える、動的ページを作成するもので、CGIはUNIXのサーバー(Windowsでもできますが)で動的ページを作成するための仕組みです。


特徴をいえば、ASPは、消費メモリがCGIより少なく、簡単な処理であれば、CGIより処理速度は速いです。CGIは、一般にスピードは遅いですが、プログラムにバグがあったときにも、そのページが使えなくなるだけで(バグの程度にもよりますが)ほかのページは、正常に動きます。ASPは、バグがあってとまると、Webサーバーソフト自信がとまる可能性があります。(ほかのページも使えない)

セキュリティ面ですが、この問題は、最先端の分野ですので、ASP、CGIを使ったから守れるというものではありません。ASP、CGIを使うことで守ることができるのは、それぞれのプログラムコードです。
個人情報の一例としては、フォームにユーザーIDやパスワードを入力させて認証すれば、そのユーザーIDパスワードは、そのままネットワークを流れていきますので、その時点でセキュリティー確保は難しいことになります。
    • good
    • 0
この回答へのお礼

お返事おそくなりましてすみません。
参考になりました。有難うございました。
がんばります。

お礼日時:2001/02/06 16:10

こんにちわ!俺も初心者で詳しくはないんですがこんな感じでどうでしょう?



・ ASPとCGIの違い

  まあよく言われているのがASPの場合
  ・Webサービスと同一メモリ空間で高速動作する
  ・COM(Component Object Model)コンポーネントによる機能拡張が
   容易に行えるという、大きな大きなアドバンテージを持っています。
  ・データベースのとの連携もかなり容易になります。
  あとはASPの場合、セッション機能っていうのがあって複数ページにまた
  がったクライアントの情報保持が容易にできます。
  俺がわかるのこんなとこぐらいです。

 最後にsnowairさんの回答でASPがIEでないと見れないみたいなこと
 書いてありましたがそんなことありませんよ。
 そもそもASPっていうのはクライアント(ようはブラウザ)の環境に依存されな 
 い為に開発されたものです。
 その為いままでクライアント側で処理してた内容をサーバサイドで処理するため
 WWWサーバーはIIS及びPWSでしかASPは対応してません。

 



 
  
    • good
    • 0
この回答へのお礼

参考になりました、有難うございました。

お礼日時:2001/02/06 16:08

揚げ足取りみたいで申し訳ないのですが。



>ただし、ASPはIE上でしか動きません!OSがWin系以外だったり、ブラウザがIE以外だと動かないのです。

ASPはクライアントのブラウザには依存しません。
ASPを解析してページを吐き出してくれるIIS(Internet Infomation Service)がWindows上で動くものなので「サーバーがWindowsNTマシンであること」が必要になるだけです。

セキュリティ管理はCGIだから守れる、ASPだから守れない、というより、それらを用いているサーバーがどれだけ堅牢かで決まります。マシンとして脆弱なサーバーであっても、上手な運営方法によって安全なサーバーになることもできます。セキュリティ管理に必要なのは正しいネットワーク、セキュリティ知識、それから独創的な発想力だと思います。上級者の課題ですね。

ASPを試してみたければ、セキュリティに関係のないところから始められるのがいいと思います。慣れると楽しいですよ。

と、書いているうちにmsystemさんから補足が入っていました(笑)
    • good
    • 0
この回答へのお礼

お礼が遅くなってすみません。
いろいろと有難うございました。

お礼日時:2001/02/06 16:09

ひとついい忘れていました。



ASPでも、クライアントのブラウザは限定されません。
私は、ASPを使って生産管理システムを作成しましたが、クライアントは、OS/2のNetScape、MacのNetscape、IE、WindowsのIEの4種類で正常に動作しています。
ページの書き方だけわかれば、i-mode、EZ-WEB、J-SKYなどの形態からのページも作ることができます。
    • good
    • 0

CGIが主にWEBサーバから起動される「子プロセス」として動作するのに対し、ASPはWEBサーバ内の拡張モジュールである「スクリプトエンジン」がスクリプトを実行します。



CGIは静的な空間でしかなかったWEBの世界を動的に変えました。
しかし一つのWEBアプリケーションを構築するためには、数多くのCGIを
作成しなくてはなりません。時間と人手がかかるし、WEBページレイアウトを
かえるたびにCGIにも変更を入れなければならないという問題がありました。

ASPはマイクロソフトがこの問題を解決する答えの一つとして作りました。
HTMLタグが書かれているファイルと同じファイルの中に、動的に動く
部分を書き込むことができます。CGIはWEBがCGIを外部のものとして
呼び出すようになっているわけです。一つになったほうが管理がしやすいですよね。またWEBサービスと同一のメモリ空間で高速に動作することができます。

ただし、ASPはIE上でしか動きません!OSがWin系以外だったり、ブラウザがIE以外だと動かないのです。
この点でまだまだCGIのほうがいまなお中心的ですし、プラットフォームを選ばないASPに似た形式の手段も今後どんどんメジャーになると思います。
動的WEB開発をこれからはじめたい方には環境をととのえやすいので、ASPでよいとは思いますが。
個人情報を守れるか、とのことですが、最近ASPをうごかす物の一つ、IISに問題が見つかったりしています。完全・・・というわけには行かないでしょうが、
インターネット上に公開する前にイントラネットでASPを試し、いろいろ細かい理解ができるようになってから公開されては如何でしょうか。
    • good
    • 0
この回答へのお礼

お礼遅くなってすみません。
参考にさせていただきます。
有難うございました、

お礼日時:2001/02/06 16:11

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QASPとASP.NETとASP.NET2.0の違い

Web開発初心者です。

帳票をPDF表示するWebアプリケーションを開発することになり、
言語はASPを使用することになりました。

そこで
ASP
ASP.NET
ASP.NET2.0
の違いをご存知の方がいらっしゃいましたら教えていただけますでしょうか。
それぞれIIS以外に必要な実行環境、ツール等も教えていただけると助かります。

不明瞭な箇所がありましたら説明させていただきます。
すいませんがよろしくお願いします。

Aベストアンサー

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用の制限等はありません。

(http://www.microsoft.com/japan/msdn/vstudio/express/faq/default.aspx)

「Express Edition を商用目的で使用することはできますか。」

また、「ASP.NET1.1用」の無料の開発ツールとして、3rdパーティ製ですが、
「Web Matrix 」と言うのがあります。

「ASP.NET Web Matrix Project 日本語版」
(http://www.microsoft.com/japan/msdn/asp.net/webmatrix/)

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用...続きを読む

QASPとCGIの選択法?

基本的な質問です。初心者なので簡単に教えてください。ASPでもCGIと同じようなこと〔BBS、カウンター、アンケート等〕が出来るみたいですが、ASPを使ったほうがよい場合とCGIのほうがよい場合と、それぞれの長所短所を教えてください。また1ホームページの中でこれら両者を作動させても問題ないのでしょうか?よろしくお願いいたします。

Aベストアンサー

windowsサーバーならASP
UNIX、Linux系サーバーなら Perl等

CGIは言語名ではありません
動作する仕組みの概念です

ASPでは表現できるけどPerlでは表現できない
という差は有りません
どちらの言語でもお望みのサイトは構築できます。
掲示板であろうが、カウンターであろうが、アンケートであろうが、会員登録制度の通販サイトであろうがプログラマ次第で自由自在です


>また1ホームページの中でこれら両者を作動させても問題ないのでしょうか?

両立させても問題ないかどうかという事では無く
メンテナンス性が悪くなるのでやりません
ASPとPerlの両方を使ってサイト構築する事は不可能ではないですが、作り手としてはかなり面倒な事です。
又、windowsサーバーと UNIX/Linuxサーバーの両方をwebサーバーとして構築しなくてはならずかなり煩雑になるからです

QASPでフォームの作成について

もしかしたら、htmlの方で質問するべきでしょうか?

ASPにてアンケート画面をつくりたいのですが、
項目の1つに選択項目が7,8個ありまして、
それを1位から再下位まで順番をつけてもらいたい項目があるのですが、
どんな形で実現すればよろしいでしょうか?
アドバイスお願い致します。

Aベストアンサー

例えばその選択項目をプルダウンメニューにします。
一つ目を選択されたら、その項目を除いたプルダウンを2項目目にします。その繰り返しです。

Q超お馬鹿。 ASPって?

OS: クライアント Windows2000, サーバ NT4, IIS4
Editor: FrontPage2000

ASP未体験者につき、皆さんに失礼な質問をしてしまいますがお許しください。

Webのクライアント側で何か動作をさせるときにはVBScriptやJAVAなんかでスクリプトを記述することは以前やったことがあります。
ASPは、ASPの文法で書いたスクリプトが記述してあるHTML(拡張子はasp)をWebサーバ(IIS?)に発行するだけで動作するようになるのでしょうか。
それとも、サーバ側にログインして何か作業が必要なのでしょうか。
まったく理解していませんが、見捨てずに教えてください。
よろしくお願いします。

Aベストアンサー

>メリットとしては、サーバーがプログラムを処理して結果のみを
>クライアントに返すので、ネットワークの負荷が小さくなります。

ネットワークの負荷は関係ありません。
サーバ上で処理を行うことで、動的にページ内容を作成できることがメリットです。
特に、サーバ上に配置した、VB等で作成したActiveX DLL等を呼び出し複雑な処理を行わせることで、スクリプト言語のデメリットである処理速度の遅さもカバーすることが出来ます。

aspファイルは、基本的にサーバに置くだけで実行できます。
ただし、IISの設定でスクリプト等を実行可能なように権限を設定しておく必要があります。

QASP.NET MVCのAjaxフォーム検証

いつも大変にお世話になります。
今回ご相談させていただきたいのは、AJAXフォーム送信と、検証の仕方ついてです。

画面遷移なしでフォーム内容を送信し、データベースを更新したく思っています。
通常のフォーム検証と送信はできていますが、Ajaxになるとさっぱりわかりません。

欲しい挙動は、
1.Ajaxでフォーム内容を送信(その前に内容の検証
2.サーバサイドでフォーム内容を受け、DBを更新して、結果をjsonで返却
3.クライアント側で結果を受け、画面の一部を書き換え、

この「3」なのですが、書き換える内容がいくつかあるので、ASP.NET AJAXのような"UpdatePanel"は使えません。
あくまでjsonを読む必要がある感じです。

質問なのですが、ここにあるような、「フォームを送信」して、「結果をjsonでもらう」処理は可能なのでしょうか?
結果の取得は非同期?になるような感じですが、Ajaxは対応できるでしょうか?

コード例があれば最高ですが、どんな些細なご意見でも構いませんので、拝聴させていただけないでしょうか?
今すぐにコードを完成させなければいけない訳ではないので、若干の余裕がありますが、基本設計や画面設計に関わる部分なので、少し急いでおります。

なにとぞ皆様のお知恵をお貸しください。

いつも大変にお世話になります。
今回ご相談させていただきたいのは、AJAXフォーム送信と、検証の仕方ついてです。

画面遷移なしでフォーム内容を送信し、データベースを更新したく思っています。
通常のフォーム検証と送信はできていますが、Ajaxになるとさっぱりわかりません。

欲しい挙動は、
1.Ajaxでフォーム内容を送信(その前に内容の検証
2.サーバサイドでフォーム内容を受け、DBを更新して、結果をjsonで返却
3.クライアント側で結果を受け、画面の一部を書き換え、

この「3」なのですが、書き...続きを読む

Aベストアンサー

おっしゃていることはよくわかるのですが、質問内容があまりに一般論すぎて回答のしようがない、ということですね。
こういう設計は実証したのちに考えるべきもので、最初から「最高の方法は何か」という結論は出しにくいですね。

これまでずっと、サーバサイドプログラムしかやったことのないPGには最初から理解できないので、そこは腹をくくってください。
しかもASP.NETとVB.NETなどという組み合わせはそれこそ特殊なので、ちょっと難しいかもしれません。

以下のジャンルで順に実装をテストしてみることをお勧めします。

jQueryな実装として
・jQuery.validationの実装
・jQuery.ajaxでの実装
・jQuery.formプラグインでの実装

MVC的な方法論として、
・Client Validation
・Remote Validation

Ajax/Htmlヘルパーな実装として
・Html.BeginForm
・Ajax.BeginForm
・OnSuccessコールバック

あともし英語が読めれば、この記事も読んでみてください。
http://stackoverflow.com/questions/9489195/difference-between-jsonresult-ajax-beginform

自分が思うには、jQueryでいこうが、Ajaxヘルパーでいこうが、どちらでも問題はないと思います。
あとは。ValidationとかConfirmationとか、Validation失敗後の戻しとか、全体を含んだForm処理のなられを確立することじゃないでしょうか?

自分なら、全部Ajaxヘルパーを使いますが。jQueryのフォーム処理は検証が絡むと煩雑なように思います。少なくともASP.NET MVCレベルの検証を行うなら、という意味で。
(phpのようにオンスクリーン検証はjavascript環境のみで、サーバサイドはエラー画面だけ出してhistory.back()してもらうんならどうでもいいんですが)

おっしゃていることはよくわかるのですが、質問内容があまりに一般論すぎて回答のしようがない、ということですね。
こういう設計は実証したのちに考えるべきもので、最初から「最高の方法は何か」という結論は出しにくいですね。

これまでずっと、サーバサイドプログラムしかやったことのないPGには最初から理解できないので、そこは腹をくくってください。
しかもASP.NETとVB.NETなどという組み合わせはそれこそ特殊なので、ちょっと難しいかもしれません。

以下のジャンルで順に実装をテストしてみることを...続きを読む


おすすめ情報