代码之家  ›  专栏  ›  技术社区  ›  Pat Niemeyer

为什么我的HTML页面看到的是原始路径,而不是Apache重写的URL和查询字符串?

  •  0
  • Pat Niemeyer  · 技术社区  · 3 年前

    我有一个非常简单的.htaccess文件,它映射到另一个文件名并添加一个查询字符串:

    RewriteEngine on
    RewriteRule ^foo$ index.html?id=42 [QSA]
    

    然而,在我的页面中,我看到的是原始路径:

    console.log("location = " + window.location); // foo
    console.log("search = " + window.location.search); // empty
    

    请注意,我的index.html页面确实加载/执行并打印值。。。所以重写正在发生。只是页面没有得到重写的URL。应该是吗?我看到许多人使用这种技术将路径重写为查询字符串的例子。。。他们是如何获得结果查询/搜索字符串的? 谢谢

    编辑:为了澄清,我试图用普通的JS和Apache重写(不涉及其他服务器)来实现这一点。

    0 回复  |  直到 3 年前