Htaccess文件,将没有查询的旧模式重定向到带有查询字符串的新模式

时间:2017-06-20 01:00:39

标签: .htaccess

我正在将网站转移到一个新的技术平台。

无论如何,我需要将一些旧模式重定向到带有查询字符串的新模式:

这样的事情:

www.example.com/DirA/DirB/OldPage-123456

需要成为

www.example.com/search?q=OldPage

所以我需要删除内部目录,删除尾随数字(旧网站中的数据库主键),然后将主键前的部分重定向到带有搜索参数的新搜索页面。

1 个答案:

答案 0 :(得分:0)

您可以使用这样的代码。

RewriteEngine On
RewriteCond %{HTTP} off
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule ^DirA/DirB/OldPage-123456/(.*)$ /search?q=OldPage/$1 [R=301,NC,L]

或者

RewriteEngine On
RewriteCond %{HTTP} off
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule ^DirA/DirB/(.*)$ /search?q=/$1 [R=301,NC,L]