(WordPress) .htaccess 选择性重定向

(Wordpress) .htaccess Selective Redirect

我想将旧站点的主页重定向到新站点的主页,同时我希望每个子页面都重定向到新站点的页面搜索。 简要地说:

www.oldsite.it --> http://newsite.it

www.oldsite.it/whatever --> http://newsite.it/search?q=whatever

我希望条件既严格又严格。 我做到了让他们分开工作。 这是我的代码:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} oldsite\.it/$ 
RewriteRule ^(.*)$ http://newsite.it/search?q= [R=301,L]

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]
</IfModule>

我怎样才能让它们工作? 谢谢

这里需要 2 个条件规则来将旧主页和旧 url 重定向到新位置,试试:

RewriteEngine On
RewriteBase /
#1)redirect "oldsite.it" to "newsite.it#
RewriteCond %{HTTP_HOST} ^(www\.)?oldsite\.it$ 
RewriteRule ^$ http://newsite.it [NC,L,R]    
#2)redirect "oldsite.it/foobar" to "newsite.it/search?q=foobar#
RewriteCond %{HTTP_HOST} ^(www\.)?oldsite\.it$ 
RewriteRule ^(.+)$ http://newsite.it/search?q= [QSA,NC,R,L]

在测试这些规则之前清除浏览器的缓存。

要使重定向永久生效,请在确定规则有效后将两条规则中的 R 更改为 R=301。