简体   繁体   English

.HTACCESS将301所有文件从根目录重定向到子目录

[英].HTACCESS Redirect 301 all files from root directory to sub directory

I am trying to redirect the user accessing my web root directory to a sub directory. 我正在尝试将访问我的Web根目录的用户重定向到子目录。

I am trying this: 我正在尝试:

//301 Redirect Entire Directory // 301重定向整个目录

RedirectMatch 301 /(.*) /1.0/projects/navigator/$1

However, it doesnt work, but repeats the path of the sub directory several times: 但是,它不起作用,但是会多次重复子目录的路径:

[my_domain]/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/ [my_domain] /1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/navigator/1.0/projects/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/ 1.0 /项目/导航/

How to do this? 这个怎么做?

Thanks in advance 提前致谢

Put the follwoing code at root directory .htaccess file 将以下代码放在根目录.htaccess文件中

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/1.0/projects/navigator/
# the above line will exclude the same sub directory from the rule below so
# no looping as what happened with you 
RewriteRule ^(.*)$ /1.0/projects/navigator/$1 [R=301,L]

You have to exclude the path you are redirecting to : 您必须排除要重定向到的路径:

RedirectMatch 301 /((?!1.0/projects/navigator).*) /1.0/projects/navigator/$1

otherwise you will get a redirect loop error because /1.0/projects/navigator/ also matches the pattern /(.*) and redirects the request to same destination multiple times. 否则您将收到重定向循环错误,因为/1.0/projects/navigator/也匹配模式/(.*)并将请求多次重定向到相同的目的地。

Clear your browser's caches before testing this. 在测试之前,请清除浏览器的缓存。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM