gpt4 book ai didi

php - 带有参数的 URL 的 htaccess 301 重定向

转载 作者:行者123 更新时间:2023-12-01 22:37:33 28 4
gpt4 key购买 nike

我的 htaccess 文件中有以下内容,它采用如下 URL:www.example.com/Page.php?id=About 并将其转换为 www.example.com/about。唯一的问题是,当我在 htaccess 中设置重定向 301 时,旧的 URL 没有重定向到新的 URL(我的理解是因为你不应该在基本重定向 301 中传递参数 - 我的基本重定向示例我在下面尝试过)。

Redirect 301 /Page.php?id=About http://www.example.com/about

要注意的是,新 URL 不一定只是删除当前 ID 并将其替换为小写版本。例如,我还想:

Redirect 301 /Page.php?id=Example http://www.example.com/example-page

我想保留重写 URL 的当前功能,但也希望对旧 URL 的任何访问都重定向到新 URL(即更新 Google 索引)。目前访问 www.example.com/Page.php?id=About 仍然有效,但显示的页面没有内容。

Options +FollowSymLinks
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([a-zA-Z0-9\-]+)/?$ Page.php?id=$1
RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ Page.php?id=$1&tab=$2
RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ Page.php?id=$1&tab=$2&tabid=$3

最佳答案

如果您将此规则添加到您的 .htaccess,它应该完成重定向的工作。它将添加 ?id=About 到/about 的重定向。如果您在 2.4.0 或更高版本上运行,则可以添加 QSD 标志以丢弃重定向中的查询字符串。

RewriteCond %{QUERY_STRING} ^id=About$
RewriteRule ^page.php /about [NC,R,L]

关于php - 带有参数的 URL 的 htaccess 301 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20658268/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com