创建 IIS 重写规则

创建 IIS 重写规则

我很难将旧的 .htaccess 重写规则转换为新的 IIS 规则,所以我想知道是否有人可以给我指明正确的方向。以下是我想要重写的一些示例 URL。

http://example.org.uk/about/

Rewrites to

http://example.org.uk/about/about.html

-----------

http://example.org.uk/blog/events/

Rewrites to

http://example.org.uk/blog/events.html

-----------

http://example.org.uk/blog/2010/11/foo-bar

Rewrites to

http://example.org.uk/blog/2010/11/foo-bar.html

目录和文件名是通用的,可以是任何名称。如有任何帮助,我们将不胜感激。

答案1

陷阱:

匹配 URL 仅在主机尾部的斜杠后匹配 - (.*)很常见,如果要重复使用捕获,则会变成 {R:1}。

主机/域名匹配是在条件中使用 {HTTP_HOST} 完成的。条件变为 {C:#};多个条件可能会造成混淆/复杂,我不确定那里的编号是如何工作的。

附加查询字符串通常是一个不错的选择。

看起来您想保留主机标头,并在响应标头中重写主机。前者是 applicationHost.config 设置,或 appcmd 更改;后者在 GUI 中,或者也可以在 .config 文件中手动触摸,或使用 appcmd。

相关内容