Angularjs 基于cookies内容的apache重定向

Angularjs 基于cookies内容的apache重定向,angularjs,mod-rewrite,cookies,apache2.4,Angularjs,Mod Rewrite,Cookies,Apache2.4,我有一个cookies内容名,比如说用户,它有学生和老师的cookie值。现在我要做的是,当用户访问该站点并且已经登录时,如果用户是学生,我必须将其重定向到/student页面,如果用户是教师,我必须将其重定向到/teacher页面 RewriteCond %{REQUEST_URI} ^/index.html$ <If " %{HTTP_COOKIE} != 'student'"> RewriteEngine On RewriteRule ^ /student?%{HTTP_H

我有一个cookies内容名,比如说用户,它有学生和老师的cookie值。现在我要做的是,当用户访问该站点并且已经登录时,如果用户是学生,我必须将其重定向到/student页面,如果用户是教师,我必须将其重定向到/teacher页面

 RewriteCond %{REQUEST_URI} ^/index.html$ 
<If " %{HTTP_COOKIE} != 'student'">
RewriteEngine On
RewriteRule ^ /student?%{HTTP_HOST} [L]
</If>
<Else>
RewriteEngine On
RewriteRule .* /teacher.html?%{HTTP_HOST} [L]
客户端id是客户端(学生和教师)的cookie
但这只会将我重定向到/student页面,即使用户是教师。

自apache 2.4以来,if和Else指令可用。我认为您使用的是较低版本,因此您将得到500个错误。您可以使用以下规则:

RewriteEngine on

RewriteCond %{HTTP_COOKIE} ^user=(student|user)$ [NC]
RewriteRule ^ /%1/? [NC,L,R]
如果cookie值为教师,则将/anyuri/重定向到/teacher,如果cookie值为学生,则将/student重定向到/teacher


让我知道它是如何为您工作的。

它让www.localhost.com多次重定向您。我清理了饼干,但还是一样
RewriteEngine on

RewriteCond %{HTTP_COOKIE} ^user=(student|user)$ [NC]
RewriteRule ^ /%1/? [NC,L,R]