none
webconfig配置问题 RRS feed

  • 问题

  • 现在我有做一个网站,用两个webconfig文件其中前台一个webconfig文件,后台一个webconfig文件,想在后台这个webconfig文件加上节点,使所有登录后台系统的用户必须从指定页面进行登录.不想用session进行判断。



    问题补充:
    我在后台那个webconfig文件里面写
    <authentication mode="Forms">
          <forms loginUrl="Login.aspx" name="AuthCookie" timeout="60" path="/" protection="All">
          </forms>
        </authentication>
    它就报错,说提示只能有一个根节点,怎么回事

    2009年9月27日 10:58

答案

  • 你好像没明白楼主的意思吧? 楼主要的是前台和后台两个web文件转到专用登陆页面 不是一个登陆页面
    如果这么简单 我早就回复了

    可以启用角色,例如:
          <authorization>
            <allow roles="Admins"/>
            <deny users="*"/>
          </authorization>

    不是这个意思 楼主的意思是 前台登陆有专用前台登陆页面 后台登陆专用后台登陆页面 楼主需要两个web文件指定两个登陆页面

    <forms /> 只能出现一次啊,达到这个需求,另建一个虚拟目录和web App不就可以了?
    2009年9月27日 15:00
    版主
  • 也可以用代码
      if (User.Identity.IsAuthenticated)
                {
                    Response.Redirect("指定登陆地址");
                }
    2009年9月27日 15:15
  • 一个做法:你可以将后台创建为一个虚拟目录实现,就可以放两个<forms />

    【孟子E章】
    2009年9月28日 1:31
    版主
  • 在iis里,网站上点右键-创建虚拟目录
    【孟子E章】
    2009年9月28日 7:45
    版主

全部回复

  • 您好,可以使用webform验证机制就可以。
    在后台的文件夹里添加类似如下:
       <authentication mode="Forms">
          <forms loginUrl="Login.aspx" name="AuthCookie" timeout="60" path="/" protection="All">
          </forms>
        </authentication>

        <authorization>
          <deny users="?"/>
          <allow users="*"/>     
        </authorization>

    2009年9月27日 12:23
    版主
  • Jiyuan 大哥 你测试过没? 我这测试你的方法怎么出错啊
    2009年9月27日 12:38
  • Jiyuan 大哥 你测试过没? 我这测试你的方法怎么出错啊

    测试过啊,上面提供的是类似的配置,要运行的话。
    <authentication mode="Forms">
          <forms loginUrl="Login.aspx" name="AuthCookie" timeout="60" path="/" protection="All">
          </forms>
        </authentication>
    这段配置必须在根目录下的<system.web> 节里。而
    <authorization>
          <deny users="?"/>
          <allow users="*"/>     
        </authorization>
    这段配置则放在根目录下的某个需要权限保护的文件夹下,例如Admins。完整的是:
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
        <appSettings/>
        <connectionStrings/>
        <system.web>      
          <authorization>
            <allow users="?"/>
            <deny users="*"/>
          </authorization>
        </system.web>
    </configuration>
    2009年9月27日 13:50
    版主
  • 你好像没明白楼主的意思吧? 楼主要的是前台和后台两个web文件转到专用登陆页面 不是一个登陆页面
    如果这么简单 我早就回复了
    2009年9月27日 13:56
  • 你好像没明白楼主的意思吧? 楼主要的是前台和后台两个web文件转到专用登陆页面 不是一个登陆页面
    如果这么简单 我早就回复了

    呵呵。要不是mldark的提醒,我也会理解错了。!
    做最好的自己
    2009年9月27日 14:16
  • 你好像没明白楼主的意思吧? 楼主要的是前台和后台两个web文件转到专用登陆页面 不是一个登陆页面
    如果这么简单 我早就回复了

    可以启用角色,例如:
          <authorization>
            <allow roles="Admins"/>
            <deny users="*"/>
          </authorization>
    2009年9月27日 14:30
    版主
  • 你好像没明白楼主的意思吧? 楼主要的是前台和后台两个web文件转到专用登陆页面 不是一个登陆页面
    如果这么简单 我早就回复了

    可以启用角色,例如:
          <authorization>
            <allow roles="Admins"/>
            <deny users="*"/>
          </authorization>

    不是这个意思 楼主的意思是 前台登陆有专用前台登陆页面 后台登陆专用后台登陆页面 楼主需要两个web文件指定两个登陆页面
    2009年9月27日 14:44
  • 你好像没明白楼主的意思吧? 楼主要的是前台和后台两个web文件转到专用登陆页面 不是一个登陆页面
    如果这么简单 我早就回复了

    可以启用角色,例如:
          <authorization>
            <allow roles="Admins"/>
            <deny users="*"/>
          </authorization>

    不是这个意思 楼主的意思是 前台登陆有专用前台登陆页面 后台登陆专用后台登陆页面 楼主需要两个web文件指定两个登陆页面

    <forms /> 只能出现一次啊,达到这个需求,另建一个虚拟目录和web App不就可以了?
    2009年9月27日 15:00
    版主
  • 也可以用代码
      if (User.Identity.IsAuthenticated)
                {
                    Response.Redirect("指定登陆地址");
                }
    2009年9月27日 15:15
  • 一个做法:你可以将后台创建为一个虚拟目录实现,就可以放两个<forms />

    【孟子E章】
    2009年9月28日 1:31
    版主
  • 一个做法:你可以将后台创建为一个虚拟目录实现,就可以放两个<forms />

    【孟子E章】

    您好,这样直接在子文件夹创建虚拟目录,还应注意bin文件夹的摆放吧。
    2009年9月28日 1:58
    版主
  • 如何创建虚拟目录啊,我是个新手.
    谁能提供点代码不??
    2009年9月28日 2:56
  • 如何创建虚拟目录啊,我是个新手.
    谁能提供点代码不??

    您好,创建虚拟目录不需要代码,在IIS上操作即可。可以google一下具体步骤。
    2009年9月28日 3:08
    版主
  • 在iis里,网站上点右键-创建虚拟目录
    【孟子E章】
    2009年9月28日 7:45
    版主
  • 你好,<authentication mode="Forms">这句话与上级配置冲突了,在子目录放这个属性布置的时候会出错。
    jon.valett@gmail.com
    2009年9月29日 1:55
    版主