叮叮 发表于 2015-11-3 18:18:55

配置错误 在唯一密钥属性“value”设置为“index.php”时,无法添加类型为“add”...

应用程序“DEFAULT WEB SITE”中的服务器错误Internet 信息服务 7.0

错误摘要
HTTP 错误 500.19 - Internal Server Error
无法访问请求的页面,因为该页的相关配置数据无效。 详细错误信息模块 DefaultDocumentModule
通知 ExecuteRequestHandler
处理程序 StaticFile
错误代码 0x800700b7
配置错误在唯一密钥属性“value”设置为“index.php”时,无法添加类型为“add”的重复集合项
配置文件\\?\E:\web\web.config
请求的 URLhttp://127.0.0.1:80
物理路径 E:\web
登录方法 匿名
登录用户 匿名
配置源
    5:             <files>
    6:               <add value="index.php" />
    7:               <add value="index.asp" />



我来帮他解答


错误原因是IIS中已经设置了默认document为default.aspx,这时候asp.net得到了另外一个相同value的add引发异常,处理方案是在<add />之前加入<clear />


这种方法适用于任何可能产生继承混淆的.net configuration



具体方法如下:


打开iis管理区,点击默认网站,在右边的选项中选择“默认文档”,点击右上方的“浏览”,弹出一个文件夹,打开web命名的文件!


这时会出现以下代码


<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
      <defaultDocument>
            <files>
   <add value="index.php" />//这是在唯一密钥属性“value”设置为“index.php”的代码,以此类推。
   </files>
      </defaultDocument>
      <directoryBrowse enabled="true" />
    </system.webServer>
    <system.web>
      <machineKey validationKey="AutoGenerate" />
    </system.web>
</configuration>

只要把<files></files>中的代码修改成


    <clear />
    <add value="index.php" />
    <add value="Default.htm" />
    <add value="index.htm" />
    <add value="index.html" />
    <add value="iisstart.htm" />

这样就能解决上述问题了!

页: [1]
查看完整版本: 配置错误 在唯一密钥属性“value”设置为“index.php”时,无法添加类型为“add”...