尝试配置重写规则时,IIS7 Url 重写模块出现错误

尝试配置重写规则时,IIS7 Url 重写模块出现错误

单击 IIS7 管理器中的 Url Rewrite 功能时出现错误:

执行此操作时出现错误。

细节:

文件名:\\?\C:\Domains\...<blah_blah>...\web.config
错误:配置部分“system.webServer/rewrite/rules”
无法读取,因为缺少节声明

我刚刚从 IIS6 设置迁移到 IIS7 服务器,并且我的 web.config 文件在 system.webServer 下没有重写部分。

答案1

IIS6 和 IIS7 使用web.config文件的不同部分来指定站点配置。

例如,IIS6 使用system.web部分,而 IIS7 使用system.webServer部分。但是,这并不像更改一个元素那么简单,因为底层子元素也不同。

一些关键的变化:

  • <httpModules>和分别<httpHandlers>更名为<modules><handlers>
  • IIS7 中的每个处理程序都需要一个 name 属性。如果您不指定它,您将收到一条错误消息。
  • 处理程序节点有一个可选但值得定义的accessPolicy属性。此值取决于您的处理程序,因此请使用适合您的处理程序。

这些建议和更多信息可在此帖子中找到:对 IIS6 和 IIS7 使用单个 Web.Config

相关内容