.htaccess 301 重定向父 URL(子 URL 除外)

问题描述 投票:0回答:1

我需要将

parent URL
重定向到新的父 URL,但
children URLs
保持不变。

www.example.com/blog -> www.example.com/xyx?cat=11

但是以下 URL 对于所有子 URL 都保持相同

www.example.com/blog/xyz -> www.example.com/blog/xyz

我尝试了以下解决方案,但子 URL 也重定向了

Redirect 301 /blog /xyx?cat=11

.htaccess
文件中添加以上行后,我的子 URL 如下所示

www.example.com/blog/xyz -> www.example.com/xyx?cat=11/xyz
    
angular apache .htaccess http-redirect url-rewriting
1个回答
0
投票
不要使用

Redirect

 指令进行此重定向,因为 
Redirect
 仅匹配 URI 的起始部分以导致重定向。

您应该使用

RewriteRule

 来使用正则表达式来控制完整的 URI,如下所示:

RewriteEngine On RewriteRule ^/?blog/?$ /xyx?cat=11 [L,NC,R=302]
此重定向规则将匹配 

/blog

/blog/
,但不会影响 
/blog/xyz

记住:

    测试前彻底清除浏览器缓存
  1. 测试后将
  2. 302
    (临时重定向)更改为
    301
    (永久重定向)
© www.soinside.com 2019 - 2024. All rights reserved.