2017-05-23 16 views
0

私は古典的なASP Webサイトプロジェクトを作成し、ユーザーからデータを収集し、そのデータをAPIに投稿するWebフォームを追加しようとしています。私のWebアプリケーションはwwwroot \ subdir \ myappにあり、.NET Framework 4.6.1をweb.configでターゲットにしています。ブラウザ(mydomain.com \ subdir \ myappまたはmydomain.com \ subdir \ myapp \ Default.aspx)でサイトに移動すると、404エラーが表示されます。もう一度リロードすると、404エラーが発生します。しかし、3回目のロードでは、ブラウザコンソールにエラーなしですべてのアセット(JavaScript/HTML/CSS)が読み込まれます。ASP.NET 4.6.1 Webフォームページ404問題

Webサーバー(IIS 8.5)のログを確認したところ、最初の2つの負荷は404.19エラーを返しています。 [1]によると、このエラーは、IISがフィルタリングルールのためにページの要求を拒否していることを示しています。しかし、そうであれば、なぜ3番目のリクエストにロードされますか?ウェブサイトのディレクトリの

[1] https://support.microsoft.com/en-us/help/943891/the-http-status-code-in-iis-7.0,-iis-7.5,-and-iis-8.0

答えて

0

チェックセキュリティプロパティ。アプリケーションプールのユーザーに対する読み取りアクセス権が必要です。 (デフォルトはIUSRです)。

+0

新しいWebフォームディレクトリとWebサイトのルートの両方のセキュリティプロパティを確認しました。私は2つのグループ、IUSRとIIS_IUSRSを持っていますが、どちらもwwwrootとwwwroot \ subdir \ myappへの読み取りアクセス権を持っています。 – kmangame0

+0

https://stackoverflow.com/questions/28276969/http-error-404-19-not-found-in-iis-8-5を確認しましたか?クエリ文字列またはフレンドリ名が異なる可能性があります。 IIS Webサイト設定のフィルタリングルールも確認してください。 – MarBog

0

私は問題を把握しました。 URLは文字単位で解析され、SQLインジェクションに関連するキーワードのリストと完全に一致するかどうか比較されます。私のエラーを引き起こす言葉は「更新」です。 IISマネージャーで.aspx要求の失敗した要求トレースルールを設定することで、解決策を見つけ出すことができました。

関連する問題