0

我现在拥有它的方式,Default.aspx 是空的,并且在 Default.aspx.cs 后面有一个代码,根据请求是否经过身份验证,它将它们重定向到 Login.aspx 或 Home.aspx。

Default.aspx 只是在那里什么都不做。似乎应该有一个更优雅的方法来解决这个问题。

任何想法都会很棒!

4

3 回答 3

2

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

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

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

于 2012-08-22T15:43:21.413 回答
0

不,IIS 需要该占位符才能知道它在那里用作默认文档。

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

于 2012-08-22T15:29:11.537 回答
0

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

在此处输入图像描述

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

于 2012-08-22T15:29:23.680 回答