トップページ⇒tech
12コメント5KB

IISプログラミングFAQ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
CGI、WinCGI、ISAPI、ASP-COMというのがあるそうですね。
セッションオブジェクトにアクセス情報持てたり特殊な機能があるそうです。
00021NGNG
質問です。
WinクライアントからIISのWebサイトにアクセスしてきた場合、
Winユーザ名取れるそうですが、どうやるんでしょう。ISAPIで出来るかな。
0003デフォルトの名無しさんNGNG
IISってアプリだからApacheと同様だけど、次のWinではカーネルモードで動くんだよage
0004デフォルトの名無しさんNGNG
匿名アクセスを拒否しとけば取れますよ。
同一ドメインでないと駄目かも。
0005IISを全く知らない男NGNG
1、まずIISとはMS製のWEBサーバ、ということでよろしいか?
3、次にISAPIとは何ですか?
<予想>IISが提供するAPI
2、次にセッションオブジェクトとは何ですか?
<予想>通信するときにできる、通信全体を表すオブジェクト
0006デフォルトの名無しさんNGNG
>>5
google に行けば教えてもらえると思うが、いちおうな。

ISAPI というのは Web サーバに対する拡張機能を記述するための API
群。DLL にしておいて、IIS がこれを実行時に読み込む。CGI と比較する
とインプロセスで動く分だけ高速。

セッションオブジェクトは、IIS に接続してきたクライアントごとに固有の情
報を格納しておけるオブジェクト。実際には Cookie を使ってクライアント
を識別し、セッションオブジェクトに格納してあるデータ自体は IIS の側に
置いてある。

ページ間でのデータの受け渡しに使う。CGI だと HIDDEN タグや URL の
? 以降で渡すパラメータと似た役割。ページごとに再送しなくて済むのと、
サーバ側にデータを置くために、クライアントで簡単に値を書き換えられな
いのが利点。
0007175NGNG
ISAPI-Extention DLL->ATL/COM->OLEDBでヤテルヨ。
曝速でいいんだが開発コストについてはちょっと言いたくないね。
普通にブラウザにDBのクエリー結果を表示させるだけだと
ISAPI使って苦労した甲斐がない、ってところか。

ウチの事例だと、ユーザの証明書をWebからダウンロードさせる時、
サーバ上のHDDに一時ファイルを一切作成せずに、メモリ中で
生成してそのままHttpServerContextに渡すとかな。
相手はブラウザじゃないんだよね。単にHTTP使ってるってだけ。
ヘッダもどうにでも加工できるんで自由度としては著しく高い。

ISAPIってIIS2.0の頃からやってるけど依然流行らない。
ハンドリングが難しいとは思わんけど、やはりデバッグの困難
さが災いしているのかも知れない。ATL/COMで切り出すのは、
処理単体のチェックを効率化するためには良い選択だった。

ISAPI-Filterの方は、特定のHTTP要求を除外するとかの
用途や、認証システム自体をLDAPベースのものに差し替える
時に使った。Filterも慣れるとおもしろい技術だ。
0008デフォルトの名無しさんNGNG
>>3
>IISってアプリだからApacheと同様だけど、次のWinではカーネルモードで動くんだよ
これほんと?
結構危険だと思うんだけど。OSダウンさせるセキュリティーホールが絶対でてきそう。
0009デフォルトの名無しさんNGNG
>IISって次のWinではカーネルモードで動くんだよ
>これほんと? 結構危険だと思うんだけど。OSダウンさせるセキュリティーホール

httpリスナーがカーネルモードで動きますage
セキュリティホールは全Windowsの機能です。
0010デフォルトの名無しさんNGNG
VIsualVasic6.0で「新規IISアプリケーション作成」を選んだところ,
「読み込み中にエラーが発生しました。 コントロール 'WebClass1' はロードできません。」
となるのですが、どうすれば新規IISアプリケーションが作成できますでしょうか、、、?
0011デフォルトの名無しさんNGNG
古いバージョンが動作しないのは、環境問題でなく、仕様です>>10
0012VB厨房NGNG
>>1-10
http://corn.2ch.net/php/index2.html
へGo!!
■ このスレッドは過去ログ倉庫に格納されています