我已经实现了部署在 IIS 中并启用了 http 和 https 端口的 ASP.Net 应用程序。现在我需要根据 Web.Config 值拒绝 HTTP 请求。如果此值设置为 True 那么它不应该接受 HTTP 附带的请求,就像它应该抛出错误一样Invalid Operation.. Try requesting with Secure connection
。我做的第一件事是在 Global.asax 文件中检查它,如下所示:
if (Utilities.Utility.HttpsCheck)
{
if (!Request.IsSecureConnection)
{
Response.Write("Invalid Operation");
}
}
在这种方法中,我遇到了一个例外request is not available in this context
。我用谷歌搜索了这个错误,并知道它无法Request
在 ASP.NET 的全局文件中访问。
我尝试的下一个方法是在我的项目的每个页面中添加上面的代码,并在处理请求之前检查它。但是通过这种方式,我无法控制阻止对 HTML 页面的请求,我的项目中也有一些 html 页面,这些文件也需要限制。
如果我在页面中包含代码,那么它仅适用于该页面。但是我在网站上也有一些图像/视频文件,这些也需要限制。
有没有更好的方法来做到这一点?请在这方面帮助我。
提前致谢。