将特定网址重定向到首页

时间:2019-08-11 16:50:27

标签: regex reactjs wordpress .htaccess redirect

我正在用Wordpress(后端-REST API)网站构建一个React(前端)。我的域名是example.com,它将具有我的React应用程序(前端),而在example.com/backend上,我具有Wordpress安装。

我的问题是:我想将example.com/backend以及除example.com/backend/wp-admin之外的所有内容都重定向到example.com(这样我才能登录)。那可行吗?

用一句话:您可以重定向example.com/backend,但可以使example.com/backend/wp-admin工作(不重定向)吗?

我在.htaccess中尝试了很多reggex,但没有一个可以解决。 RewriteEngine On RewriteCond %{HTTP_HOST} ^fanismahmalat.com/backend$ [NC] RewriteCond %{REQUEST_URI} !^(.)?wp-login.php(.)$ RewriteCond %{REQUEST_URI} !^(.)?wp-admin$ RewriteRule ^(.)$ https://example.com/ [R=301,L]

1 个答案:

答案 0 :(得分:0)

排除URL的一种方法是在“真实”重定向之前设置规则,例如

RewriteRule ^backend/wp-admin - [L]
RewriteRule ^backend/ https://example.com [R,L]

第一个规则将处理wp-admin情况。第二条规则将捕获以backend/开头的其他任何内容。


另一种解决方案是将特定的URL排除在重写范围之外

RewriteCond %{REQUEST_URI} !^/backend/wp-admin
RewriteRule ^backend/ https://example.com [R,L]

.htaccess文件位于backend子文件夹中时,规则几乎相同,但是RewriteRule模式不包含backend前缀

RewriteCond %{REQUEST_URI} !^/backend/wp-admin
RewriteRule ^ https://example.com [R,L]

RewriteRule ^wp-admin - [L]
RewriteRule ^ https://example.com [R,L]