web.config中的<location>不起作用</location>

时间:2012-03-09 10:55:49

标签: c# asp.net web-config

我在我的网站上设置了FormAuthentication

我想允许访问“登录”页面

  1. ?是匿名的,*是所有人。有什么区别?

  2. 我已将<location>添加到web.config。订单有关系吗?

    <configuration>
      <configSections>
        <section name="hibernate-configuration"  
                 type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" />
        <section name="log4net" 
                 type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
      </configSections>
      <appSettings>
        <add key="webpages:Version" value="1.0.0.0" />
        <add key="ClientValidationEnabled" value="true" />
        <add key="UnobtrusiveJavaScriptEnabled" value="true" />
      </appSettings>
      <location path="~/Authentication.htm">
        <system.web>
          <authorization>
            <deny users="*" />
          </authorization>
        </system.web>
      </location>
      <location path="~/Resources">
        <system.web>
          <authorization>
            <deny users="*" />
          </authorization>
        </system.web>
      </location>
      <location path="~/js">
        <system.web>
          <authorization>
            <deny users="*" />
          </authorization>
        </system.web>
      </location>
      <location path="~/Images">
        <system.web>
          <authorization>
            <deny users="*" />
          </authorization>
        </system.web>
      </location>
      <location path="~/Controllers">
        <system.web>
          <authorization>
             <deny users="*" />
          </authorization>
        </system.web>
      </location>
      <system.web>
        <compilation debug="true" targetFramework="4.0">
          <assemblies>
            .....
          </assemblies>
        </compilation>
        <authentication mode="Forms">
          <forms name="Login" loginUrl="~/Authentication.htm"
                 protection="All" path="/" timeout="30" />
        </authentication>
        <authorization>
           <deny users ="?" />
           <allow users = "*" />
        </authorization>
    
  3. 为什么我仍然会在我添加到<location>的路径中收到身份验证错误?

      ?

    Authentication.htm RETURNURL =%2fResources%2fScripts%2fjquery-1.7.1.min.js:1Uncaught   SyntaxError:意外的标记&lt;

         

    Authentication.htm?ReturnUrl =%2fjs%2fCommon.js:1Uncaught SyntaxError:   意外的标记&lt;

         

    Authentication.htm RETURNURL =%2fjs%2fAuthentication.js:1Uncaught   SyntaxError:意外的标记&lt;

1 个答案:

答案 0 :(得分:0)

  1. 之间的区别? (匿名)和*(大家)是*包括所有匿名和其他用户,而?仅包括尚未登录的用户。