VS2010中生成遇到的 web.config 问题

1. 错误:无法在此路径使用此配置节。当站点管理员使用继承的配置文件中的  <location allowOverride="false">  锁定对此节的访问时会出现这种情况
(1)情况一:是因为framework的配置文件不允许自定义权限(<location  allowOverride="false">),allowOverride默认值true被更改为了false;
     解决:修改为(<location  allowOverride="true">);
(2)情况二:是因为主机商修改了默认的framework的配置文件,把权限修改得过低导致的。 framework配置文件路径:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config (注意不同版本红色部分目录可能不一样)
打开这个文件找到下面这段   
<location allowOverride="true">         
    <system.web>             
       <securityPolicy>                 
      <trustLevel name="Full" policyFile="internal"/>                 
      <trustLevel name="High" policyFile="web_hightrust.config"/>                 
      <trustLevel name="Medium" policyFile="web_mediumtrust.config"/>       <trustLevel name="Low" policyFile="web_lowtrust.config"/>
      <trustLevel name="Minimal" policyFile="web_minimaltrust.config"/>
    </securityPolicy>     <trust level="Full" originUrl=""/>     <identity impersonate="true"/>   </system.web> </location>

    黄色trust部分的level默认是为full,有的主机商吧这里设置为Medium或其他,会提示不受信任的错误。还有一个方法就是在web.config的</system.web>上面一行加上<trust level="Full" originUrl=""/>,改好的web.congfig如下 :

<?xml version="1.0" encoding="UTF-8"?> 
<configuration>     
        ....中间部分省略     
        <trust level="Full" originUrl=""/>   
    </system.web> 
</configuration>

(3)自己遇到的错误,如下,web.config中:

<location path="." allowOverride="false" inheritInChildApplications="false">  
......省略
</location >

 

 

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。