【问题标题】:Set Path dynamically in Forms Authentication在表单身份验证中动态设置路径
【发布时间】:2010-10-27 01:03:02
【问题描述】:

这是我们面临的问题。

在托管环境设置中,我们多次托管同一个项目。我们目前在 web.config 的表单配置部分手动指定路径。但是,为了使我们的部署过程更加顺畅,我们希望根据虚拟目录名称设置路径。

有没有办法让我们在web.config中动态设置Path?

【问题讨论】:

    标签: asp.net cookies web-config session-state


    【解决方案1】:

    FormsAuthentication.SetAuthCookie 的重载将 cookie 路径作为参数,因此如果您自己处理登录过程,则只需传递您选择的路径。

    问题是标准的System.Web.UI.WebControls.Login 只会使用默认的路径值。但是,您可以处理 LoggedIn 事件来修复路径...

    void FixCookie( object sender, EventArgs args )
    {
        Response.Cookies[FormsAuthentication.FormsCookieName].Path = "/my-custom-path";
    }
    

    【讨论】:

    • 我会在早上上班的时候测试一下,谢谢!
    • 虽然可行,但我找到了一个稍微好一点的解决方案,我已在此处发布:failboy.net/2009/05/set-forms-authentication-path
    • @StevenMcD 尝试了您的链接...似乎没有激活。你能重新发布一个有效的吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-16
    • 1970-01-01
    • 2021-05-27
    相关资源
    最近更新 更多