使用appcmd添加IIS文件扩展名规则遇重复条目错误如何解决
IIS appcmd添加文件扩展名规则重复报错解决方案
报错是因为IIS的requestFiltering的fileExtensions集合要求每个扩展名仅能存在一条规则,具体操作方法如下:
方案1:先删除原有规则再新增
- 第一步(可选,核对现有配置):查询目标扩展名的现有规则
命令:appcmd.exe list config "Default Web Site" -section:system.webServer/security/requestFiltering /fileExtensions | findstr ".txt"
替换命令中的.txt和站点名即可匹配你的实际需求。 - 第二步:删除对应扩展名的已有规则
命令:appcmd.exe set config "Default Web Site" -section:system.webServer/security/requestFiltering /-"fileExtensions.[fileExtension='.txt']"
该操作会直接移除该扩展名对应的所有允许/拒绝规则,无额外确认提示。 - 第三步:添加你需要的新规则
命令:appcmd.exe set config "Default Web Site" -section:system.webServer/security/requestFiltering /+"fileExtensions.[fileExtension='.txt',allowed='True']"
方案2:直接修改现有规则(更简便,无需删除)
如果只是要调整已有扩展名的允许/拒绝状态,可直接用修改命令跳过删除步骤,避免重复报错:appcmd.exe set config "Default Web Site" -section:system.webServer/security/requestFiltering /"fileExtensions.[fileExtension='.txt'].allowed"="True"
注意:如果需要配置服务器全局规则而非单站点规则,直接移除命令中的站点名"Default Web Site"即可;若在PowerShell环境中执行命令,需对包含方括号的参数额外加引号转义。
内容的提问来源于stack exchange,提问作者BlueCardinal
相关产品推荐
相关产品推荐

