有没有一种优雅的方法将Default.aspx重定向到Home.aspx或Login.aspx?

时间:2012-08-22 15:25:56

标签: asp.net

我现在拥有它的方式,Default.aspx是空的,并且有一个代码隐藏在Default.aspx.cs之后,它们将它们重定向到Login.aspx或Home.aspx,具体取决于请求是否经过身份验证。< / p>

Default.aspx只是在那里什么都不做。看起来应该有更优雅的方法。

任何想法都会很棒!

3 个答案:

答案 0 :(得分:2)

在我看来,最优雅的方法是使用web.config。您可以在此处指定未经身份验证的用户将自动重定向到的登录页面:

<authentication mode="Forms">
  <forms loginUrl="~/Login/LogOn.aspx" />
</authentication>
<authorization>
  <deny users="?"/>
</authorization>

除此之外,您还可以通过授权标记指定哪些用户被授予访问当前文件夹中页面的权限。

答案 1 :(得分:0)

不,IIS需要占位符才能知道它是否作为默认文档。

编辑:虽然技术上可以改变这些,但从长远来看,这是不值得的。更好地遵循惯例并将home.aspx移动到default.aspx。

答案 2 :(得分:0)

这应该是在IIS级别配置的;也就是说,您可以将应用的Default目标网页配置为Home.aspx。如果用户未登录,Home.aspx应自动重定向到Login.aspx。请参阅以下IIS管理器屏幕截图:

enter image description here

从列表中选择您的WebApp - &gt;双击“默认文档”。