繁体   English   中英

重定向到登录页面asp.net

[英]Redirect to login page asp.net

我有一个在asp.net(vb.net作为后端)制作的网站。 该站点位于http:// localhost / TEST 如果我访问任何像http://localhost/TEST/about.aspx这样的aspx文件,我会被重定向到登录aspx。 Login.aspx在visual studio中设置为起始页面。

问题是,如果我访问http:// localhost / TEST,我来到一个目录,其中包含所有aspx文件的列表。

如何将访问http:// localhost / TEST的任何用户重定向到http://localhost/TEST/login.aspx

你的帖子中有一些混合的概念。 让他们组织起来。

首先,VS有一个起始页面。 这是在运行带有或不带调试器的网站时使用的起始页面。 这只适用于从VS运行网站的情况。 一旦部署到IIS,那就不再有任何影响。

您要求的是用户在未明确指定页面时重定向到的默认页面。 您可以在web.config中配置默认​​页面,如下所示:

<system.webServer>
  <defaultDocument>
    <files>
      <clear />
      <add value="About.aspx" />
    </files>
  </defaultDocument>
</system.webServer>

您不希望将Login.aspx指定为默认页面。 指定主页。 如果用户已经登录,那么他们不应该自动导航到登录页面,您希望他们转到某个主页。

登录页面听起来已经正确配置,因为您提到当您转到about.aspx时它会重定向到login.aspx。 这是在web.config文件的身份验证部分中处理的。 如果用户尚未通过身份验证,则会重定向到登录页面。

<authentication mode="Forms">
     <forms name="asp.ASPXAUTH" loginUrl="login.aspx" protection="All" path="/"/>
</authentication>

我认为您需要更改的唯一部分是将defaultDocument部分添加到web.config。

在您的文件夹TEST中 ,创建一个名为“default.aspx”的空白网页,如果他们未登录,则会将访问者重定向到登录页面,如果他们已登录,则将页面重定向到页面。

您只需使用web.config文件并禁用目录浏览。

<system.webServer>
  <directoryBrowse enabled="false" />
</system.webServer>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM