如何将页面从目录重定向到子目录?

如何将页面从目录重定向到子目录?

我最近将网站上的所有内容从目录中移到www.mysite.com/shop了根目录中。这意味着我需要将访问目录中页面的任何请求重定向/shop回根目录中的同一页面,例如。

www.mysite.com/shop/categories/washroom

www.mysite.com/categories/washroom

这需要发生在我的网站中以前使用该/shop目录的所有页面上。

我在这里得到了一个解决方案:

RedirectMatch (^/shop/)(.*) http://www.mysite.com/$2

并且它运行完美,但是现在我不得不切换回使用位于/shop目录中的旧版本软件,所以我现在需要完全相反的重定向例如。

www.mysite.com/categories/washroom 

www.mysite.com/shop/categories/washroom 

有人能帮帮我吗?

答案1

您可以尝试:

RedirectMatch (^/categories/washroom/)(.*) http://www.mysite.com/shop/categories/washroom/$1

那样有用吗?

答案2

反转你的逻辑:

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/shop
RewriteRule ^/(.*)$ http://%{SERVER_NAME}/shop/$1 [L,R]

相关内容