Url 如何使用.htaccess重定向页面

Url 如何使用.htaccess重定向页面,url,redirect,rule,Url,Redirect,Rule,我使用下面给出的代码重定向到登录页面,当在地址栏中输入url时,例如(example.com/web/),然后重定向到“如何?” 试试这个 RewriteEngine On RewriteCond %{HTTP_HOST} ^www\.exmple\.com$ RewriteRule ^$ http://www.exmple.com/web/login.php[L,R=301] 试试这个 RewriteEngine On Rewrit

我使用下面给出的代码重定向到登录页面,当在地址栏中输入url时,例如(example.com/web/),然后重定向到“如何?”

试试这个

   RewriteEngine On
        RewriteCond %{HTTP_HOST} ^www\.exmple\.com$
        RewriteRule ^$ http://www.exmple.com/web/login.php[L,R=301]
试试这个

   RewriteEngine On
        RewriteCond %{HTTP_HOST} ^www\.exmple\.com$
        RewriteRule ^$ http://www.exmple.com/web/login.php[L,R=301]

%{HTTP_HOST}变量表示不带路径段的当前域名。您的RewriteCond无效,因为它试图将example.com/web/作为域名匹配,而该域名不存在,因此RewriteCond失败

更改以下条件:

RewriteCond %{HTTP_HOST} ^exmple.com/web$

您可以使用以下选项:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?exmple.com$
RewriteRule ^(web/?)?$ http://exmple.com/web/login.php [L,R=301]
您还可以在htaccess中使用RedirectMatch将url重定向到不同的位置:

RedirectMatch ^/web/?$ http://exmple.com/web/login.php 

在测试这些解决方案之前,请清除浏览器的缓存。

%{HTTP\u HOST}变量表示不带路径段的当前域名。您的RewriteCond无效,因为它试图将example.com/web/作为域名匹配,而该域名不存在,因此RewriteCond失败

更改以下条件:

RewriteCond %{HTTP_HOST} ^exmple.com/web$

您可以使用以下选项:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?exmple.com$
RewriteRule ^(web/?)?$ http://exmple.com/web/login.php [L,R=301]
您还可以在htaccess中使用RedirectMatch将url重定向到不同的位置:

RedirectMatch ^/web/?$ http://exmple.com/web/login.php 
在测试这些解决方案之前,请清除浏览器的缓存。

检查此项检查此项