使用.htaccess将所有子文件夹的目录重定向到Root(主)目录

时间:2017-12-20 09:17:43

标签: apache .htaccess redirect mod-rewrite

假设我的域名为http://example.com/,我有一个页面,例如http://example.com/abc/(使用重写规则删除页面文件的扩展名)。

但有时,用户类型http://example.com/abc/xxx/(xxx是各种各样的,他们输入的机会很多),例如http://example.com/abc/1njnsdchttp://example.com/abc/diief123/等。通常,它会向服务器发出请求需要/abc/xxx//abc/injnsdc//abc/diief123/等。不幸的是,我们文件夹/abc/中没有文件,因此服务器应该返回404错误,找不到。

我希望制定重写规则以使服务器获取请求,例如http://example.com/abc/xxx/http://example.com/abc/1njnsdc/http://example.com/abc/diief123/不会返回404,而是回复重定向到http://example.com/abc/。我的另一个静态请求是URL无法更改。因此,一旦用户输入http://example.com/abc/xxx/http://example.com/abc/1njnsdc/http://example.com/abc/diief123/等,所有这些都可以访问用户类型http://example.com/abc/???/。并且用户仍在阅读页面http://example.com/abc/

1 个答案:

答案 0 :(得分:0)

您可以尝试将404页面重定向到主页面! 如果你不想让它显示出来。 如果您使用的是php,这可能对您有用:

<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".get_bloginfo('url'));
exit();
?>