快速vcl for 301将混合大小写路径重定向到小写

时间:2017-10-11 17:28:09

标签: redirect http-status-code-301 fastly fastly-vcl

自迁移以来,我的应用程序具有仍然链接的混合大小写路径,但这些路径应重定向到所有小写路径。但是,对于遗留API和graphql查询原因,仍有一些路径需要仍然存在。

我的问题的更详细但仍然简化的版本是:在我的快速配置中使用自定义vcl,我如何将所有混合大小写的网址重定向为小写,但排除/api/graphql?我想我也想要免除所有查询字符串和哈希的小写。

我对vcl的熟悉程度非常低,肯定会感谢一些例子!

更新: 到目前为止,我有以下几点,但我对它没有多少信心,但是:

if (req.url.path !~ "^/(api|graphql)" && req.url.path ~ "^/([A-Z])") {
  set req.url.path = std.tolower(req.url.path);
  set resp.status = 301;
}

1 个答案:

答案 0 :(得分:0)

graphql基本上是发布请求,分为突变/查询,快速或清漆缓存获取请求