- PR -

ASP.NETで仮想ディレクトリ数の限界?

1
投稿者投稿内容
tkt
会議室デビュー日: 2006/05/30
投稿数: 3
お住まい・勤務地: TOYAMA
投稿日時: 2006-05-30 05:11
いつもお世話になっております。
よく分からずにASP.NETを使おうとしてはまっているようです。

 規定のWebサイト以下に仮想ディレクトリを50個ほど作って、
試しているんですが、15個ぐらいまではサンプルプログラムも
順調に動きます。16個目あたりから以降同じサンプルプログラムでも、

[ディレクトリ名パス名が入る] 更新の監視を開始できませんでした。

と出てしまいます。
 しばらく時間を置くと、今まで動かなかったほうが15個ほど
動いて、動いていたはずの仮想ディレクトリのサンプルプログラム
が同じエラーで動かなくなります。

・仮想ディレクトリはローカルディレクトリではなく、すべて
他のマシンのディレクトリです。共にドメインコントローラです。
・8文字を超えるディレクトリ名はありませんが、Read/Scan/Execute
ぐらいのアクセス権はIUSR_computername/SYSTEM/NETWORK SERVICE
に与えています。
・それ以外の設定は分かっていないのでインストールしただけの初期値です。
・IISのログにはエラーではなく200番で出ています。
OS: WindowsServer2003
.NET Framework: 1.1.4
開発環境: VSではなくメモ帳のみ

 ダメならダメで思い切って転進したいのですが、あともう少しで
出来るのではないかと考えると時間だけが経っていきました。
machine.configのここを触るとか、ドメインコントローラで
Webサーバはしない、等どなたかアドバイスいただければ幸いです。

よろしくお願いいたします。
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-05-30 12:47
このあたりは調べてみましたか?
http://www.google.co.jp/search?hl=ja&rls=GGGL%2CGGGL%3A2005-09%2CGGGL%3Aja&q=%E7%9B%A3%E8%A6%96%E3%82%92%E9%96%8B%E5%A7%8B%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%9B%E3%82%93%E3%81%A7%E3%81%97%E3%81%9F&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
tkt
会議室デビュー日: 2006/05/30
投稿数: 3
お住まい・勤務地: TOYAMA
投稿日時: 2006-05-31 12:31
ありがとうございます.

 googleでは調べてみたつもりで,もう一度見させていただきましたが
やはり分かりません.
 環境提示で間違いと追加がありました.
> ・IISのログにはエラーではなく200番で出ています。
・IISのログには500番のエラーで出ていました。
・他サーバの共有名以下のサブフォルダを仮想ディレクトリに割り当てています.
・IISサーバのinetpub\\wwwroot以下にサブフォルダを作り,仮想ディレクトリを
 20個割り当てたところ,すべて動きました.
・「ファイルの/ディレクトリの変更の監視を開始できませんでした.」という
 メッセージは多いようですが,「ファイルの/ディレクトリの」がなく,
 パス名しか出て来ないので,多くの方とは違うのかなと思います.
 アクセス権の問題なら一切動かないと思うのですが,動くこともあるので,
 余計頭を悩ませます.

以下にエラー画面を載せます.
どなたかアドバイスいただければ幸いです。(Yenマークは出ないんですね)
-----
'\\他サーバ名\共有名\フォルダ名\' の変更の監視を開始できませんでした
説明 : 現在の Web 要求を実行中に、ハンドルされていない例外が発生しました。エラーに関する詳細および例外の発生場所については、スタック トレースを参照してください。

例外の詳細: System.Web.HttpException: '\\他サーバ名\共有名\フォルダ名\' の変更の監視を開始できませんでした

ソース エラー:
現在の Web 要求の実行中にハンドルされていない例外が生成されました。障害の原因および発生場所に関する情報については、下の例外スタック トレースを使って確認できます。

スタック トレース:
[HttpException (0x80070038): '\\他サーバ名\共有名\フォルダ名\' の変更の監視を開始できませんでした]
System.Web.DirMonCompletion..ctor(DirectoryMonitor dirMon, String dir, Boolean watchSubtree, UInt32 notifyFilter) +139
System.Web.DirectoryMonitor.StartMonitoring() +42
System.Web.DirectoryMonitor.StartMonitoringFile(String file, FileChangeEventHandler callback, String alias) +154
System.Web.FileChangesMonitor.StartMonitoringDirectoryRenamesAndBinDirectory(String dir, FileChangeEventHandler callback) +538
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +331

[HttpException (0x80004005): ASP.NET 初期化エラー]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +982
System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +128
-------------------------------------------------------------------------------
バージョン情報 : Microsoft .NET Framework バージョン :1.1.4322.2300; ASP.NET Version:1.1.4322.2300
_________________
todo
ぬし
会議室デビュー日: 2003/07/23
投稿数: 682
投稿日時: 2006-05-31 13:06
SMB経由でフォルダを監視するときに、OS上の制限があるのでは?

http://support.microsoft.com/default.aspx?scid=kb%3Bja%3B271148
渋木宏明(ひどり)
ぬし
会議室デビュー日: 2004/01/14
投稿数: 1155
お住まい・勤務地: 東京
投稿日時: 2006-05-31 13:45
引用:

> ・IISのログにはエラーではなく200番で出ています。
・IISのログには500番のエラーで出ていました。
・他サーバの共有名以下のサブフォルダを仮想ディレクトリに割り当てています.
・IISサーバのinetpub\wwwroot以下にサブフォルダを作り,仮想ディレクトリを
 20個割り当てたところ,すべて動きました.



仮想フォルダには、匿名アクセスを許していますか?

匿名アクセスを禁止している場合、仮想フォルダとして公開している共有フォルダの接続数制限に引っかかる可能性があると思います。
tkt
会議室デビュー日: 2006/05/30
投稿数: 3
お住まい・勤務地: TOYAMA
投稿日時: 2006-06-02 06:15
皆様ありがとうございます。返事が遅れまして申し訳ありません。

> 仮想フォルダには、匿名アクセスを許していますか?
 これについては、匿名アクセスを許しています。つもりです...

> SMB経由でフォルダを監視するときに、OS上の制限があるのでは?
 多分、これにひっかったのだと思われます。

UNC サーバーおよび NAS デバイス上にリモートに格納されたコンテンツに対する IIS 6.0 の展開と構成
http://www.microsoft.com/japan/technet/prodtechnol/windowsserver2003/technologies/webapp/iis/remstorg.mspx
・ファイルサーバ側で「開いているファイル」を見ていると一つの仮想ディレクトリ接続当り3個接続増加
・開いているフォルダ数が49個でちょうど止まる。15個16個ではなく50個の制約がありそうだ。

 せっかくサーバを増やして、Webサーバとファイルサーバを分離できたと思ったら、余計な分離でした。
 昨晩、双方のレジストリをいじって試してみて改善されませんでしたが、どこか間違っていたのでしょう。

 もう少し試してみますが、まずは皆様ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)