apache web server重写路径删除域部分(/ path而不是http:// IPaddress:port / path)

时间:2017-06-23 13:23:56

标签: javascript angularjs apache window.location

我有几个angularjs项目,我在apache web服务器上提供服务。 它们都在同一级别的不同文件夹下,所以我只想使用apache web服务器。我使用组合框和按钮在项目之间导航。然后,选择与json数组中的键值对匹配。 value只是所选项目的index.html

的路径

然而,有时(随机)导航到 project2 / dist / index.html而不是: http://10.0.1.27:8090/project2/dist/index.html

我在浏览器(Chrome)上收到DNS_PROBE_FINISHED_NXDOMAIN或ERR_NAME_NOT_RESOLVED

当我提供完整的URL而不是路径时,随机发生其他事情:它有时会尝试去(注意冒号':'在http之后) HTTP // 10.0.1.27:8090 /项目2 / DIST / index.html中

编辑:导航部分:

html Side

$scope.urlList = {
  "/project1/dist/index.html" : "Project 1",
  "/project2/dist/index.html" : "Project 2",
  "/project3/dist/index.html" : "Project 3",
  "/project4/dist/index.html" : "Project 4",
  "/project5/dist/index.html" : "Project 5"
};

$scope.redirectUrl= function(){
  var url = $("#urlListCombobox").val();
  if(url != 0){
    window.location=url;
  }
}

Javascript方

<Directory />
    AllowOverride None
    Require all denied
</Directory>

知道为什么会这样吗? 任何评论都赞赏。

最近我需要使用.htaccess文件“重写”。在此之后,我审查了事件的增加。我还从

更新了httpd.conf文件
<Directory />
    AllowOverride All
    # Require all denied
</Directory>

{{1}}

重写的问题是什么?有谁知道这样的apache错误?

提前致谢。

1 个答案:

答案 0 :(得分:0)

所以这是纯粹注意力不集中的结果,而不是与apache有关的任何事情:)

两个月前我的一次改变导致了重复的功能。

$scope.redirectUrl= function(){
      var url = $("#urlListCombobox").val();
      if(url != 0){
        window.location=url;
      }
    }

下面的重复功能是由浏览器(因此我不知道)随机选择的。

$scope.redirectUrl= function(){
      var url = $("#urlListCombobox").val();
      if(url != 0){
        location.replace("http://" + url)
      }
    }

删除重复项解决了问题。