2

我目前正在使用我的 IIS 服务器并安装了 IIS 重写模块。

我目前有一个规则,它允许我所有的coldfusion模板都可以很容易地被解析。

它生成以下模式

^([^/]+)/?$

它涵盖了对下一页上任何模板的任何请求

index.cfm?action={R:1}

该规则只是将任何请求解析到我的网站并使其直接转到我的 index.cfm 页面。

我想了解的是如何获得以下内容。

  1. ^/css/- 然后像任何其他页面请求一样处理任何脚本或子文件夹
  2. ^/js/- 然后处理任何 js 文件,因为它存储在我的服务器上
  3. ^/assets/- 将此文件夹中的任何文件作为普通文件处理。

我以前从未使用过这个模块,但我正在努力找出如何处理像 js 和 css 这样的普通文件以及它们各自的目录。

我在编写规则时没有问题,因此每个规则都以文件夹名称为前缀,但我一生都无法弄清楚从哪里获取有关此信息的任何信息。

4

2 回答 2

2

这是所有静态文件

<rule name="Static Files" stopProcessing="true">
    <match url="^(.*)$" />
    <conditions logicalGrouping="MatchAll">
    <add input="{SCRIPT_NAME}" pattern="\.(bmp|gif|jpe?g|png|css|js|txt|pdf|doc|xls)$" ignoreCase="true" />
    </conditions>
    <action type="None" />
</rule>

更新:对不起,我没有注意到你要求文件夹。但我会继续回答以防其他人想知道。

于 2013-06-17T11:02:23.003 回答
2

只要您在捕获所有内容的规则之前指定一条规则,您就应该能够使用该stopProcessing属性来防止模块对请求执行任何操作。无需指定操作。例如:

<rule name="CSS files" stopProcessing="true">
   <match url="^/css/" />
</rule>
于 2013-06-16T09:25:50.727 回答