加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – UrlRewriting.Net模块IIS7等于Page.User == null?

发布时间:2020-12-15 19:46:08 所属栏目:asp.Net 来源:网络整理
导读:我已经使用UrlRewriting.Net模块几年了,在 Windows XP和 Windows 2003中没有任何问题.我最近刚将家用PC升级到Windows 7并开始开发新网站. 计划是使用.html扩展,并使用UrlRewriting.Net模块将它们重写为.aspx对应物.在VWD 2008中,一切都完美无瑕,但是当我尝试
我已经使用UrlRewriting.Net模块几年了,在 Windows XP和 Windows 2003中没有任何问题.我最近刚将家用PC升级到Windows 7并开始开发新网站.

计划是使用.html扩展,并使用UrlRewriting.Net模块将它们重写为.aspx对应物.在VWD 2008中,一切都完美无瑕,但是当我尝试通过IIS7运行时,这是一个不同的故事.

当我尝试通过.html重写访问页面时,我无法再访问Page.User;它一直返回null.如果我使用它的.aspx扩展名点击页面,则会正确填充Page.User.我还应该提一下,我的母版页中有一个LoginView控制器,它有相同的症状:当通过.html扩展访问时,它会显示AnonyousTemplate;使用.aspx扩展名时,它会正确显示LoggedInTemplate.我猜这两个是相关的.

[注意:我也尝试过无扩展名的网址,他们也遇到了同样的问题]

我让它工作的唯一方法是将应用程序池切换到Classic,然后要求我为.html扩展名添加ASP.Net ddl处理程序[否则它由StaticFileHandler处理并作为404出现错误].但是,我希望我的网络应用程序能够为人们正常运行,而无需使用IIS.

所以我有几个问题:

>有没有人知道为什么Page.User总是等于null .html => .aspx改写页面?
>为什么它在VWD 2008中有效,而在IIS7中无效?
> IIS6 =>的变化IIS7可能导致了这个?
>关于变通方法的任何其他想法?

[注意:我刚试过.aspx => .aspx重写并没有出现问题.不是我想要的,但我想我应该提到它.

解决方法

刚刚在UrlRewriting.Net模块上取得了突破.这使它在IIS7中以集成模式工作:

< modules runAllManagedModulesForAllRequests =“true”>

搞清楚之后,我对“runAllManagedModulesForAllRequests”进行了搜索,弹出的第一件事就是Scott Guthrie’s blog,它实际上是为了这个目的而使用它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读