网站重定向错误(进入无限循环)

时间:2015-12-06 08:36:22

标签: .htaccess redirect url-redirection http-status-code-301

我正在尝试重定向网站中的流量

example.com/anything 指向 example.com/search/anything

example.com/sandy 会转到 example.com/search/sandy

我在.htaccess文件中尝试了以下重定向。但是,它要么进入“无限循环”,要么收到浏览器错误消息:

  

“页面未正确重定向”

RedirectMatch 301 /(.*) http://www.example.com/directsearch/$1

RedirectMatch 301 /$ http://www.example.com/directsearch/$1

请帮忙。提前谢谢。

1 个答案:

答案 0 :(得分:0)

你可以使用这种基于正则表达式的负前瞻:

Options -Indexes
DirectoryIndex index.php
RewriteEngine on

RewriteCond %{THE_REQUEST} !\s/+directsearch/ [NC]
RewriteRule ^(.*)$ /directsearch/$1 [L,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?/$1 [L,QSA]