重定向URL是指当用户访问某个URL时,服务器返回一个指令让浏览器自动跳转到另一个URL。带有特定GET参数的重定向是指在跳转过程中保留或添加特定的查询字符串参数。
RewriteEngine On
RewriteCond %{QUERY_STRING} ^param=value$
RewriteRule ^old-page\.php$ /new-page.php? [R=301,L]
location /old-page {
if ($arg_param = "value") {
return 301 /new-page?new_param=new_value;
}
}
<?php
if (isset($_GET['param']) && $_GET['param'] === 'value') {
header('Location: /new-page?new_param=new_value', true, 301);
exit;
}
?>
app.get('/old-page', (req, res) => {
if (req.query.param === 'value') {
return res.redirect(301, '/new-page?new_param=new_value');
}
// 其他处理
});
if (new URLSearchParams(window.location.search).get('param') === 'value') {
window.location.href = '/new-page?new_param=new_value';
}
原因:A重定向到B,B又重定向回A 解决:检查重定向逻辑,确保没有循环引用
原因:重定向时没有正确处理查询字符串 解决:确保在重定向URL中包含必要的参数
原因:浏览器缓存了重定向 解决:对于临时重定向使用302/307而非301
原因:特殊字符未正确编码 解决:使用encodeURIComponent处理参数值
没有搜到相关的文章