如何在HTML 5模式下配置URL重写AngularJS应用程序的IIS?
我有AngularJS种子项目我补充说
$locationProvider.html5Mode(true).hashPrefix('!');
到app.js文件。我想将IIS 7配置为将所有请求路由到
http://localhost/app/index.html
所以这个对我有用。我该怎么做?
最新情况:
我刚刚发现,下载并安装了IISURL重写模块希望这能让我的目标变得简单明了。
更新2:
我想这概括了我想要达到的目标(从AngularJS开发人员文档):
使用这种模式需要在服务器端重写URL,基本上您必须重写到应用程序入口点的所有链接(例如index.html)。
更新3:
我还在做这方面的工作,我意识到我不需要重定向(有重写规则)某些URL,例如
http://localhost/app/lib/angular/angular.jshttp://localhost/app/partials/partial1.html
因此,CSS、js、lib或Parals目录中的任何内容都不会被重定向。其他一切都需要重定向到app/index.html
有人知道如何轻松地实现这一点,而不必为每个文件添加规则?
更新4:
IISURL重写模块中定义了两个入站规则。第一条规则是:
第二条规则是:
现在,当我导航到localhost/app/view 1时,它会加载页面,但是支持文件(CSS、js、lib和Parals目录中的文件)也会被重写到app/index.html页面-因此,无论使用什么URL,所有内容都将作为index.html页面返回。我想这意味着我的第一条规则,即防止这些URL被第二条规则处理的规则,是不起作用的。有什么想法吗?.有人吗?.我觉得很孤独.-(