ラベル IIS の投稿を表示しています。 すべての投稿を表示
ラベル IIS の投稿を表示しています。 すべての投稿を表示

2009年11月15日日曜日

[IIS6.0] Webガーデン

IIS6.0導入されたWebガーデンについてのメモです。

Webガーデンで最大ワーカープロセス数を2以上にした場合に注意が必要。
Webガーデンとは、1つのアプリケーションを複数のワーカープロセスで動かす仕組み。
アプリケーション変数や、セッションは共有されない。
つまり、SessionIdは別物になる。
Session領域も別物になる。
システム構築時にクラスタ構成と同じように考慮する必要がある。

あんな簡単に設定できるものが、こんなに大きく影響があってよいのですかねぇ。

2009年9月10日木曜日

[IIS]IISで指定の拡張子のファイルをクライアントに見せなくする

たとえば、xmlファイルを公開フォルダ内においていた場合、
デフォルトの設定だとクライアントから要求があれば見えてしまいます。
それを見えなくする方法があります。これはIIS6.0以上のバージョンの場合です。

まず、IISを止めて%SystemRoot%\system32\inetsrv\MetaBase.xmlを開きます。
その中の<IISMimeMap>タグを見てください。

<IISMimeMap Location = "/LM/MimeMap"
MimeMap=".asx,vide/x-ms-asf
.xml,text/xml
.tsv,text/tab-separated-values
(略)
">
</IIsMimeMap>

なんて感じになっていると思います。
これの「.xml,text/xml」行を消しちゃいます。

これでOKです。

ブラウザからxmlファイルにアクセスすると 404エラーが返されると思います。
また、これは仮想ディレクトリ単位では出来ず、サイト単位でしかできないようです。


ついでにIIS5.1(XP Proとか)の場合なんですが、MetaBase.xmlが無くて、MetaBase.binというバイナリに
設定情報が書かれています。その為、直接の編集は出来ず、編集方法が良くわかりませんでした。

ですが、URLScanってツールを使うと実現できます。
これをダウンロード、インストールすると%SystemRoot%\system32\inetsrv\URLScanってフォルダに展開されています。
このファイルのURLScan.iniに見せたくないファイルの拡張子を指定することが出来ます。

Optionsセクションで、UseAllowExtensionsの値が0だとDenyExtensionsが有効、値が1だとAllowExtensionsが有効と言うこと。

[AllowExtensions] --- 見せるファイル
[DenyExtensions] --- 見せないファイル

ここのDenyExtensionsセクションに「.xml」を足してやるとクライアントから要求されても送信しない
です。

もしくはUseAllowExtensionsを1にして、見せる拡張子をひたすら書くと。
このほうが安心ですかね。メンドクサイけど。

で、こいつはIIS6でも動くみたいですね。