我已经开始编码,并提出了以下代码段,但是我确信可以安全,快捷地完成此操作。我也没有找到这个问题的答案。
(为什么要这样做?作为服务器迁移的一部分,我们需要开始将旧的属性键重命名为其新的2019值。只有...外部系统链接到我们,我们不希望丢失这些外部交互。因此,两者旧的和新的应该继续工作。与此同时,我们在旧系统中设置了新属性,这样一来它们就可以正确迁移)
我如何:在php中重命名查询参数键,并在进行更改后发送301。只要!用于GET请求。
[更新]代码正在进行中
parse_str($_SERVER['QUERY_STRING'], $params); if (count($params)) { $params_replace = array( 'b' => 'manufacturer' ); $found = false; $url = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH); foreach ($params_replace as $search => $replace) { if ($params[$search]) { $params[$replace] = $params[$search]; unset($params[$search]); $found = true; } } if ($found) { header("Status: 301 Moved Permanently"); header('Location: https://' . $_SERVER['HTTP_HOST'] . $url . '?' . urldecode(http_build_query($params))); } }