从AngularJS URL(Grunt服务器)中删除#后,网站进入无限循环

时间:2019-04-05 08:18:34

标签: angularjs url hash gruntjs url-rewrite-module

我已经用angularjs服务器设置了grunt。我从网址中删除了#,并设置了一个路由器。在这种情况下,localhost:8080会无限循环。

基本上我在浏览localhost:8080/ww/en时需要它。

我尝试使用不同的mod-rewrites规则,但对我来说却无济于事。

这是我的路由器功能:

app.config([
  "$routeProvider",
  "routes",
  "$locationProvider",
  routeConfigurator
]);
function routeConfigurator($routeProvider, routes, $locationProvider) {
  $locationProvider.html5Mode(true);
  $locationProvider.hashPrefix("");
  $routeProvider.when("/:countrycode/:oldlanguagecode", {
    templateUrl: "/home.html",
    title: "My Page",
    name: "Global - EN"
  })
  .otherwise({ redirectTo: "/ww/en" });
}

这是我的Grunt配置:

var modRewrite = require("connect-modrewrite");
var proxySnippet = require("grunt-connect-proxy/lib/utils").proxyRequest;
var pushState = require("grunt-connect-pushstate/lib/utils").pushState;
var rewriteModule = require("http-rewrite-middleware"); 
livereload: {
  options: {
    open: true,
    port: 9000,
    hostname: "localhost",
    base: "./",
    middleware: function(connect) {
      return [
        modRewrite(["^[^\\.]*$ /index.html [L]"]),
        connect.static(".tmp"),
        connect().use(
          "/bower_components",
          connect.static("./bower_components")
        ),
        connect().use("/app/styles", connect.static("./app/styles")),
        connect.static(appConfig.app),
        connect.static("./"),
        pushState(),
        proxySnippet
      ];
    }
  }
}, 

0 个答案:

没有答案