【问题标题】:nginx pretty rewriting one parameternginx漂亮地重写了一个参数
【发布时间】:2017-07-17 11:30:55
【问题描述】:

我有一个简单的重写规则,但我无法让它工作(即使这里有所有其他答案)

我希望用户打开这个网址:

www.example.com/mypage/abcd

并且 nginx 应该将其重写为:

www.example.com/myrealpage/index.html?link=abcd

所以实际上我希望我的link 参数很好地嵌入到网址中。
这是几乎有效的规则:

location /mypage { 
    rewrite ^/mypage/(.*)$ /myrealpage/index.html?link=$1 last;
}

它似乎适用于 index.html 文件,但现在所有脚本和 css 导入都已损坏。因为每个js/script.jscss/style.css 都被重写为mypage/abcd/css/style.css,这显然不存在。

仅供参考:
我显然需要重写 mypagemyrealpage 因为我的服务器提供商会自动生成一个 alias 配置文件,其中已经包含一个 location /myrealpage 所以,除了重命名它以添加我自己的 @ 之外,我没有看到任何其他选项987654333@规则。

如何
我可以改变那个 url 来重写这个link 参数吗?它只是一个参数。

【问题讨论】:

    标签: regex nginx url-rewriting


    【解决方案1】:

    您正在重写 /mypage 目录的每个路径。如果您将脚本保存在父目录之外,您就可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-19
      • 1970-01-01
      • 2013-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-25
      • 1970-01-01
      相关资源
      最近更新 更多