我现在拥有它的方式,Default.aspx 是空的,并且在 Default.aspx.cs 后面有一个代码,根据请求是否经过身份验证,它将它们重定向到 Login.aspx 或 Home.aspx。
Default.aspx 只是在那里什么都不做。似乎应该有一个更优雅的方法来解决这个问题。
任何想法都会很棒!
我现在拥有它的方式,Default.aspx 是空的,并且在 Default.aspx.cs 后面有一个代码,根据请求是否经过身份验证,它将它们重定向到 Login.aspx 或 Home.aspx。
Default.aspx 只是在那里什么都不做。似乎应该有一个更优雅的方法来解决这个问题。
任何想法都会很棒!
在我看来,最优雅的方法是使用 web.config。您可以在此处指定未经身份验证的用户将自动重定向到的登录页面:
<authentication mode="Forms">
<forms loginUrl="~/Login/LogOn.aspx" />
</authentication>
<authorization>
<deny users="?"/>
</authorization>
除此之外,您还可以通过授权标签指定哪些用户可以访问当前文件夹中的页面。
不,IIS 需要该占位符才能知道它在那里用作默认文档。
编辑:虽然在技术上可以改变这些,但从长远来看是不值得的。更好地遵循约定并将 home.aspx 移动到 default.aspx。
这应该是在 IIS 级别配置的;也就是说,您可以将Default
应用的登录页面配置为Home.aspx
. 如果用户未登录,Home.aspx
则应自动重定向到。请参见 IIS 管理器的以下屏幕截图:Login.aspx
从列表中选择您的 WebApp --> 双击“默认文档”。