- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个包含多个 .aspx 页面的文件夹,我想限制对这些页面的访问。我已将 web.config 添加到该文件夹中 <deny users="?"/>
.
问题是,当我使用 UrlRewrite 时,ReturnUrl 是自动生成的,带有 .aspx 文件的物理路径。
有没有办法在不进行手动身份验证检查和重定向的情况下操作 ReturnUrl?有没有办法从代码隐藏或从 web.config 设置 ReturnUrl?
编辑 :该应用程序使用 ASP.NET 2.0 WebForms。我不能使用 3.5 路由。
编辑 2 :似乎从未捕获过 401 状态代码。它为 protected 页面返回 302 并使用 ReturnUrl 重定向到登录页面。它不会为 protected 页面返回 401。嗯...有趣... Ref: http://msdn.microsoft.com/en-us/library/aa480476.aspx
这让事情变得更难......我可能必须编写反向重写映射规则来正则表达式匹配 ReturnUrl 并在它不返回 401 时替换它......如果它返回 401 我可以将 RawUrl 设置为 Response.RedirectLocation 或替换 ReturnUrl与 RawUrl。
其他人有任何其他想法吗?
最佳答案
一探究竟。希望这可以帮助。
#region [ Imports ]
using System;
using System.Web;
using System.Web.Security;
#endregion
namespace Foo.Handlers
{
public class AuthModule : IHttpModule
{
#region IHttpModule Members
public void Init(HttpApplication application)
{
application.PostReleaseRequestState += delegate(object s, EventArgs e)
{
if (application.Response.StatusCode == 401)
application.Response.Redirect(FormsAuthentication.LoginUrl + "?ReturnUrl=" + HttpUtility.UrlEncode(application.Request.RawUrl), true);
};
}
public void Dispose() { }
#endregion
}
}
<modules>
<add name="AuthModule" type="Foo.Handlers.AuthModule, Foo"/>
</modules>
关于asp.net - 在 ASP.NET 2.0 WebForms 中使用 UrlRewrite 时如何优雅地处理 ReturnUrl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1828098/
不知道大家有没有遇到过urlrewriter.net因为正如我目前看到的 urlrewriting.net有点受欢迎。 有人能告诉我哪一个更容易实现并且更强大吗? 谢谢... 最佳答案 谢谢你的回答。
我希望能够在不重启服务器的情况下更改 urlrewrite.xml 中的规则。 我正在运行 Tomcat 7。在 web.xml 中我有... UrlRewriteFilter
我正在实现 URL 重写功能,我已经在我的项目中包含了所有必要的功能,即 WEB-INF/lib 中的 urlrewritefilter-4.0.3.jar和 WEB-INF 中的 urlrewrit
我正在尝试将所有 http 请求重定向到 https,除了“health.html”,我需要通过端口 80 上的标准 http 提供服务;出于某种原因,下面的规则似乎并没有这样做——我确定这是一个语法
UrlRewrite 重写url详解 UrlRewrite就是我们通常说的地址重写,用户得到的全部都是经过处理后的URL地址。 urlrewrite顾名思义,就是对URL进行重写,用户得到的全部
我遇到了一个奇怪的 URL 问题。我正在使用 .htaccess 和 header(location) 来设置网址。 我认为我正在“重置”底部带有 header (位置)的网址,但它看起来像是我指定的
我正在使用 Tuckeys UrlRewrite 重定向对我的应用程序发出的任何请求,以便我可以根据 url 执行一些操作。我需要能够捕获任何请求,但我不想从资源中获取请求,所以基本上它将是类似 /i
我正在使用来自 tuckey (http://www.tuckey.org/urlrewrite/) 的 URLRewrite 过滤器 现在我制定了一些规则,但是有一种情况让我很头疼。URL:/gro
我正在使用 Tuckeys UrlRewrite 过滤器在我的 java 应用程序上获取干净的 url。我将所有对某个资源的请求重定向到 Spring 请求调度程序。这是我原来的规则 (.*)
因此,我们目前支持两个网络应用程序,并希望在不久的将来停止这样做。因此,我们希望将所有针对旧 Maven 项目的 url 重定向到静态页面。 为此,我有: 1- 添加了以下依赖项: org.tu
我将 Tuckey 的 URL 重写过滤器与自主开发的安全过滤器结合使用。 URL 重写过滤器映射到 /* 安全过滤器映射到'/*' 此外,URL 重写过滤器具有以下规则: User
我正在使用 tuckey URLRewrite 过滤器,其规则之一如下: Proxy URL with jession ID's [\p{ASCII}]+
我要疯了,我已经尝试了所有方法,urlencode、html 编码,但是 urlrewriting.net 将阿拉伯语查询字符串读取为 ??字符 非常感谢您的帮助 最佳答案 如果您安装了 .NET 3
我遇到一个错误,似乎无法使用 Eclipse 中的 Tuckey urlrewrite 配置文件来解决。我已将违规规则缩小到以下条目: /admin/**
我要疯了,我已经尝试了所有方法,urlencode、html 编码,但是 urlrewriting.net 将阿拉伯语查询字符串读取为 ??字符 非常感谢您的帮助 最佳答案 如果您安装了 .NET 3
需要从我的网址中删除jsessionid。经过在互联网上的一些研究,发现 UrlRewrite 可以做到这一点。 所以我为它创建了一条规则。这是 xml 文件 (urlrewrite.xml):
我使用http://tuckey.org/urlrewrite/图书馆 我正在尝试检测页面的URL是否被重写, 我想出了这样的东西: if(req.getRequestURL().toString()
我需要使用 HttpModule 编写自定义“UrlRewriter”,在“重写”的那一刻,我需要访问 Session 并遵循了另一个 SO 线程的建议: Can I access session s
我一直在从事 Spring 项目。我希望我的 URL 写在 localhost:8080/app/main/something 而不是 localhost:8080/app/main.htm?type
我正在使用 Tuckey URLRewrite我需要一个接受除“/”或“\”以外的所有内容的规则 我已经写了一条规则,但是 tucker 显示无休止的异常并且没有加载页面 ^
我是一名优秀的程序员,十分优秀!