我在Umbraco 7周围的单页应用程序有问题。我想将所有请求重定向到AngularJS而不是Umbraco,因为我已将以下urlrewrite添加到UrlRewriting.config:
<add name="SPA"
virtualUrl="^~/(?![0-9]+/)([^\?]*?)$"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/"
ignoreCase="true" />
但是这会重定向所有对AngularJS的响应,所以现在不可能在/ umbraco打开Umbraco。有谁知道如何制作一个urlrewrite重定向除Angular之外的所有响应/ umbraco?
我发现解决方案比它看起来更容易。认为正则表达式总是那样。正则表达式说:“从基础URL(〜)之后的字符串开头排除umbraco和ucommerce和uCommerce,其余的去基本网址。
这是我的解决方案:
<add name="Eventcatering"
virtualUrl="^~/(?!umbraco|ucommerce|uCommerce)(.*)"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/"
ignoreCase="true" />
我也使用uCommerce包,它在/ ucommerce中有一些控制API,所以这些也需要排除。