3

IIS7 で ASP.NET アプリケーションからログ ファイルを書き込もうとしていますが、次の例外が引き続き発生します。

UnauthorizedAccessException "パス 'C:\Users\Brady\Exports' へのアクセスが拒否されました。"

Google が見つけたさまざまなアドバイスに基づいて、iis_iusrs、iis_wpg、および aspnet ユーザーに書き込みアクセスを許可しましたが、それでもエラーが発生します。誰かがそのディレクトリにログファイルを作成する方法を説明できますか、またはWebアプリケーション自体の下にログディレクトリを作成すると、ファイルの書き込みが自動的に許可されますか?これはおそらくより良い解決策ではありませんか?

4

3 に答える 3

4

次のいずれかのアカウントに権限を付与する必要があります

ASPNET - Win XP and Win 2000
NETWORK SERVICE - Win Vista and 2003

これらは既定値です。アプリケーション プールが別のプロセス アカウント用に構成されている場合は、その特定のアカウントで作業する必要があります。

于 2008-10-09T16:42:32.170 に答える
0

ASP.NETで他のユーザーになりすます場合、そのユーザーアカウントには、そのディレクトリに書き込むためのアクセス許可が必要です。Webアプリケーションのログまたはデータを保存する場所としてユーザーの個人用フォルダーのパスを設定しないことを強くお勧めします。同じアカウントでない場合は、ASP.NETワーカープロセスアカウントがそのユーザーのプライベートフォルダーにアクセスできる必要があります。

D:\ webapps \ logapp\logfilesなどの共通領域を割り当てることをお勧めします。もちろん、適切な権限が与えられています。

于 2008-10-13T10:55:33.260 に答える
0

Mitchel はそれを理解していると思いますが、SysInternals のProcess Monitor (レガシー システムの場合はFileMon ) を使用して当て推量/試行錯誤をなくすと、これらの種類のトラブルシューティングがはるかに簡単になることを付け加えておきます。

于 2008-10-09T16:44:13.337 に答える