IISの使用を開始しようとしています。 IIS Managerに新しいサイトを作成し、それをファイルシステム上のフォルダーにマップし、そのフォルダーにindex.htmlを追加しました。このサイトのポートを85に設定しました。 http://localhost:85/index.html
にアクセスしようとすると、次のエラーメッセージが表示されます。
401.3-未分類-Webサーバー上のこのリソースのアクセス制御リスト(ACL)構成または暗号化設定のため、このディレクトリまたはページを表示する権限がありません。
フォルダーの全員に読み取りアクセス権を与えて、もう一度試しました。その後、ページにアクセスできました。
次に、フォルダーのプロパティをwwwrootのプロパティと比較しました。 wwwrootがIIS_IUSRSの読み取りアクセス権を持っていることがわかりました...フォルダで同じ操作を行い、もう一度試してみると、上記のエラーが再度発生しました。デフォルトで匿名アクセスが有効になっていることを確認しましたが、それでもこのエラーが発生します。
なぜこれが起こるのですか?問題を解決する正しい方法は何ですか?
私はこの同じ問題で数日間苦労しました。これは、サイトがマップされているファイルシステムフォルダーのセキュリティユーザーアクセスプロパティを変更することで解決できます。ただし、承認する必要があるアカウントはIIS_IUSRSだけではありません。
OR
ここに私のために働いたものがあります。
サーバーをアプリプールIDから継承するように匿名に設定するには、次の手順を実行します。
静的コンテンツを扱っているので...
Webサイトのルートとして機能するフォルダーで、右クリック>プロパティ>セキュリティを選択すると、「ユーザー」がリストに表示されますか? 「追加...」をクリックして入力しない場合は、完了したら「適用」をクリックしてください。
TL; DR;
ほとんどの場合、次のアカウントへのアクセスを許可する(1つ|両方):
withAccess Rights:
それでおしまい!
より詳細な説明をお読みください...
上記の写真で選択されている内容に応じて、WebアプリケーションフォルダーのACLへのアクセスを許可します。
IUSR
(私の場合)+ IIS AppPool\DefaultAppPool
の両方にアクセスを許可しますIIS AppPool\DefaultAppPool
のみにアクセスを許可しますIIS AppPool\DefaultAppPool
アカウントは、新しいIIS WebアプリケーションのデフォルトのAppPoolアカウントです。カスタムアカウントを設定している場合は、カスタムアカウントを使用してください。
アカウントに次の許可を与えます:
Read & Execute
List folder contents
Read
それでおしまい。
この解決策を試してください:
https://serverfault.com/questions/38222/iis-7-5-windows-7-http-error-401-3-unauthorized
また、IIS AppPoolを実行しているユーザーがそのフォルダー/ファイルへの読み取りアクセス権を持っているかどうかを確認します。
これを見てください:
http://www.iis.net/learn/manage/configuring-security/application-pool-identities
これもご覧ください:
他の誰かがこれに遭遇した場合に備えて。これらの手順をすべてトラブルシューティングしましたが、MACからいくつかのファイルを解凍したため、Microsoftは通知なしで自動的にファイルを暗号化しました。フォルダーのアクセス許可を設定しようとして数時間後、ファイル名が緑色であることがわかりました。これは、ファイルが暗号化され、フォルダーのアクセス許可が正しい場合でもIISが同じエラーをスローすることを意味します。