我有一个问题,我需要限制用户使用 url 从我的网站下载静态文件,如 .css 和 .js 文件。因为我已经创建了一个 httphandler,并且我已经编写了一些代码来将请求重定向到我的登录页面。它成功阻止了对 .js 文件的请求,但同时它不允许我的网站使用该 .js 文件。有什么办法吗?
问问题
692 次
1 回答
0
我们可以使用 Http Module 来检查 URL 是否包含这些特定的扩展名。例如,我们在 App_code 文件夹中创建一个 http 模块,并在 web.config 中配置 http 模块:
namespace HttpUrlRewrite
{
/// <summary>
/// Summary description for HttpUrlRewrite
/// </summary>
public class Rewriter : System.Web.IHttpModule
{
public void Init(System.Web.HttpApplication Appl)
{
Appl.BeginRequest += new System.EventHandler(Rewrite_BeginRequest);
}
public void Dispose()
{
}
public void Rewrite_BeginRequest(object sender, System.EventArgs args)
{
System.Web.HttpApplication App = (System.Web.HttpApplication)sender;
string path = App.Request.Path;
string strExt = System.IO.Path.GetExtension(path);
if (strExt == ".css")
{
//Do Something
HttpContext.Current.Response.Redirect("error.aspx");
}
else
{
//Do Something
}
}
}
}
<httpModules>
<add type="HttpUrlRewrite.Rewriter" name="HttpUrlRewrite" />
</httpModules>
于 2012-06-21T14:45:27.127 回答