我想从http://example.com/contact-us重定向到http://example.com/contact-us/offices我已在我的.htaccess中写了以下内容:
重定向301 / contact-us / http://example.com/contact-us/offices
但是当我访问http://example.com/contact-us时,它会重定向到http://example.com/contact-us/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/offices/
答案 0 :(得分:1)
您正在使用此规则:
Redirect 301 /contact-us/ http://example.com/contact-us/offices
这会重定向以/contact-us/
新网址/contact-us/offices
开头的每个网址。由于重定向网址也以/contact-us/
开头,因此重定向会一次又一次地发生,导致重定向循环。为了避免这种情况,请使用具有正则表达式支持的RedirectMatch
,以便您可以控制匹配模式。
RedirectMatch 301 ^/contact-us/?$ http://example.com/contact-us/offices
在测试此更改之前,请不要忘记清除浏览器缓存。
答案 1 :(得分:0)
如果您要重定向到同一主机使用以下规则,然后在清除缓存后尝试此网址到达http://example.com/contact-us/
也使用正斜杠。
Redirect 301 /contact-us/ /contact-us/offices/