背景:従来のASP環境をサポートしています。そのサポートの一環として、自分のマシンにローカルで開発セットアップを行っています。IIS7を実行しています。
私の環境にアクセスするには、「http:// localhost:99999 /」(プライバシー保護のために偽造されたポート番号)を使用します。私はこれに問題はありませんでした-今日まで。
この環境で実行することを目的としたアプリケーションを作成しました。アプリはASP.NETv.4.0です(例として、「http:// localhost:99999 / DotNetApp /」と呼びます)。もちろん、これを実行するには、それをサポートするように環境アプリケーションプールを設定する必要がありました(現在はこれを実行しています)。
問題:これを構成した後、私は今次のようになっています:
'/'アプリケーションのサーバーエラー。
アクセスが拒否されました。説明:このリクエストを処理するために必要なリソースへのアクセス中にエラーが発生しました。要求されたリソースを表示する権限がない可能性があります。
エラーメッセージ401.3:指定した資格情報を使用してこのディレクトリまたはページを表示する権限がありません(アクセス制御リストのためにアクセスが拒否されました)。Webサーバーの管理者に、「[filepath]\SourceFiles」へのアクセスを許可するように依頼してください。
IIS構成を設定する前に、これを取得できませんでした。なぜ今これを手に入れているのですか?
注:これは「http:// localhost:99999/」でのみ発生します。「http:// localhost:99999 / default.asp」を試しても、これは発生しません(ページは問題なく表示されます)。
誰か洞察がありますか?
前もって感謝します 。。。
編集:追加の症状:アプリケーションプールの設定で遊んでみました。.NET Frameworkのバージョンを2.0.50727または「マネージコードなし」に変更すると、問題は解決します。4.0.31319に変更すると壊れます。もちろん、他の2つのバージョンのいずれかを使用すると、ASP.NETアプリは実行されません。
編集#2:この問題は、Webルートだけでなく、フォルダーまたはディレクトリ( "http:// localhost:99999 / somefolder /"など)に移動するすべてのリンクで発生します。
編集#3:回避策があります:「http:// localhost:99999 /」と「http:// localhost:99999 /DotNetApp/」を別々のアプリケーションプールに設定します。前者は.NET2.0で実行され、後者は.NET4.0で実行されます。(8時間の制限が過ぎたら、これを回答として投稿します。)おそらく最善の回答ではありません-あまり厄介ではないものが好きです-しかし、当面はそうします仕事を成し遂げます。ただし、同じアプリプールですべてを実行できるソリューションを誰かが持っている場合は、ぜひ投稿してください。