我使用下面的代码重定向到登录页面,在地址栏中输入url例如(exmple.com/web/)然后重定向到" http://exmple.com/web/login.php"怎么样?
RewriteEngine On
RewriteCond %{HTTP_HOST} ^exmple.com/web/$
RewriteRule ^$ http://exmple.com/web/login.php [L,R=301]
答案 0 :(得分:0)
试试这个
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.exmple\.com$
RewriteRule ^$ http://www.exmple.com/web/login.php[L,R=301]
答案 1 :(得分:0)
%{HTTP_HOST}变量表示没有路径段的当前域名。您的RewriteCond无效,因为它试图将 example.com/web / 与域名相匹配,这是一个不存在的域,而RewriteCond失败。
更改以下条件:
RewriteCond %{HTTP_HOST} ^exmple.com/web$
到
RewriteCond %{HTTP_HOST} ^(www\.)?exmple.com$
您可以使用以下内容:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?exmple.com$
RewriteRule ^(web/?)?$ http://exmple.com/web/login.php [L,R=301]
您还可以在htaccess中使用RedirectMatch将网址重定向到不同的位置:
RedirectMatch ^/web/?$ http://exmple.com/web/login.php
在测试这些解决方案之前,请先清除浏览器的缓存。