質問

フラットファイルリスナーを使用しています。

Visual Studio の Web 開発サーバーで実行する場合は、「c: emp\log.txt」にログインします。

しかし、同じマシン上のローカル IIS でホストしている場合は何も書き込まれません。

IIS で匿名認証をすでに許可しています。

Visual Studio 2008、IIS 5.1、および EntLib 4.1 を使用しています。

何が問題だったのか教えてください。

役に立ちましたか?

解決

確かに許可の問題のように聞こえます。アプリケーションをアウト プロセスで実行している場合、プロセスは aspnet_wp.exe となり、それを実行するアカウントは MACHINENAME\ASPNET になります。

ASPNET アカウントに c: emp フォルダーへの書き込み権限があることを確認する必要があります。そうでない場合は、ASPNET アカウントに書き込みアクセスを許可します。

それでも問題が解決せず、トラブルシューティングが必要な場合は、ダウンロードしてください プロセスモニター sysinternals からアクセスして、ACCESS DENIED メッセージがあるかどうかを確認します。少し古く、レガシー ツール Filemon (Process Monitor に置き換わる) を使用していますが、 このKB記事 トラブルシューティングの手順と何を探すべきかを説明します。

他のヒント

ワーカー プロセスは c: emp に書き込むアクセス権を持っていますか?IIS 5 を使用してからしばらく経ったので、ワーカー プロセスがどのアカウントで実行されているかわかりませんが、c: emp への書き込みアクセス権があることを確認する必要があります。

c: emp フォルダーのプロパティ ダイアログを表示し、IIS を実行しているアカウントにフォルダー (およびその子) への書き込みアクセス権があることを確認します。これは単なる標準の Windows セキュリティです。

IIS がどのアカウントを使用しているかを確認するには、IIS 管理コンソールに設定がある必要があります。デフォルトのアカウントは「IUSR_」で始まります。

特定のアカウントに絞り込む前に、いつでも c: emp の "Everyone" に書き込みアクセス権を与えてみて、問題が解決するかどうかを確認できます。「Everyone」に書き込みアクセスを許可しても機能しない場合は、権限の問題ではありません...

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top