我有AngularJS seed project,并且我添加了
$locationProvider.html5Mode(true).hashPrefix('!');
添加到app.js文件。我想将IIS 7配置为将所有请求路由到
http://localhost/app/index.html
所以这对我来说是有效的。我该怎么做呢?
更新:
我刚刚发现、下载并安装了IIS URL Rewrite module,希望这能让我的目标变得简单明了。
更新2
我想这总结了我试图实现的目标(摘自AngularJS Developer documentation):
使用此模式的
需要在服务器端重写URL,基本上您必须重写指向应用程序入口点的所有链接(例如index.html)。
更新3:
我仍然在做这个工作,我意识到我不需要重定向(有规则重写)某些URL,比如
http://localhost/app/lib/angular/angular.js
http://localhost/app/partials/partial1.html
所以css、js、lib或partials目录中的任何内容都不会被重定向。其他所有内容都需要重定向到app/index.html
有谁知道如何轻松实现这一点,而不必为每个文件添加规则?
更新4:
我在IIS URL重写模块中定义了两个入站规则。第一条规则是:
第二条规则是:
现在,当我导航到localhost/app/view1时,它会加载页面,但是支持文件(在css、js、lib和partials目录中的文件)也会被重写到app/index.html页面中-所以无论使用什么URL,一切都会以index.html页面的形式返回。我猜这意味着我的第一条规则,即防止这些URL被第二条规则处理的规则,不起作用。有什么想法吗?...anyone?...I感觉很孤单...:-(
https://stackoverflow.com/questions/12614072
复制相似问题