如何用 PHP 实现 302 重定向到其他 URL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用 PHP 实现 302 重定向到其他 URL相关的知识,希望对你有一定的参考价值。

参考技术A
header("Location: url");

PHP 将标准 URL 重定向到 SEO URL

【中文标题】PHP 将标准 URL 重定向到 SEO URL【英文标题】:PHP Redirect standard URLs to SEO URLs 【发布时间】:2011-12-17 14:26:09 【问题描述】:

我目前使用以下重写规则:RewriteRule ^books/([bc])/([0-9]+)/(.*)/page([0-9]+) books.php?type=$1&id=$2&title=$3&page=$4 [L] RewriteRule ^books/([bc])/([0-9]+)(.*) books.php?type=$1&id=$2&title=$3 [L] RewriteRule ^books/(.*) books.php?type=$1 [L] RewriteRule ^books books.php [L]

我想使用 htaccess 或 PHP 添加一个从标准 URL 格式到 SEO URL 格式的重定向。 例如:books.php?b=1=>books/b/1/book-titlebooks.php?c=1=>books/c/1/category-title

如果这可以使用 htaccess 完成,那很好,我绝对不需要标题,我还是使用 PHP 处理标题(重定向到正确的 URL,以防输入的标题不正确)。

谢谢。

【问题讨论】:

【参考方案1】:

在这里查看我的答案:my .htaccess redirection fails

你可以这样重写它(省略标题 - 你需要 php):

RewriteEngine On
RewriteCond %REQUEST_URI  ^/books\.php$
RewriteCond %QUERY_STRING ^([a-z])=([a-zA-Z0-9_-]+)$
RewriteRule ^(.*)$ http://www.domain.com/%1/%2? [R=302,L]

【讨论】:

不幸的是,这似乎不起作用。我在我在 OP 中发布的案例下方添加了代码(RewriteEngine On 也在那里),它不会将我从 books.php?b=1 重定向。

以上是关于如何用 PHP 实现 302 重定向到其他 URL的主要内容,如果未能解决你的问题,请参考以下文章

使用 php 获取 302 重定向 url

为啥 rev 规范链接总是使用 302 重定向

302 url重定向到paypal主页

详解301重定向及实现方法

nginx环境 index一直重定向302怎么解决

python requests库如何处理302重定向?