2

您好我有一个特殊的问题:我的任务是将 WP 页面(page_id=2)重定向到同一域上的页面(about),但是当我使用字符串重定向时:

RewriteEngine On
RewriteCond %{QUERY_STRING} ^page_id=2$
RewriteRule ^(.*)$ http://example.com/about? [R=301,L] 

...它重定向pages page_id=2位于网站上的所有内容,例如

en/?page_id=2 , ok/?page_id=2 , en/ok/?page_id=2

有没有办法专门重定向“根”页面page_id=2而让另一个页面保持原样?

如果将来我想将某些子页面重定向到,那该en/ok/?page_id=2怎么en/ok/about办?

对不起我的英语不好 - 如果我能提供额外的说明,请询问。

4

1 回答 1

3

您需要根据请求 URI 添加重写条件:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^page_id=2$
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^(.*)$ http://example.com/about? [R=301,L]

将来,当您想将 about 附加到所有页面时,可以使用:

RewriteEngine on
RewriteCond %{QUERY_STRING} ^page_id=2$
RewriteRule ^(.*)$ http://example.com/$1/about? [R=301,L]
于 2013-11-12T10:31:30.777 回答