我正在使用 Tank_auth 来处理注册、登录等。我的 CI 位于我的域根目录的子文件夹中,例如 www.domain.com/account/
一个例子:
登录控制器就是这样auth/login所以我的网址是www.domain.com/account/auth/login
我想将www.domain.com/account/auth/login更改为www.domain.com/account/login所以在我的 routes.php 配置文件中我添加了这一行:
$route['login'] = 'auth/login';
现在我希望当我访问www.domain.com/account/auth/login时,我会被带到 www.domain.com/account/login。如果我访问www.domain.com/account/login,我将保留在该 url 上,并且页面应该正确加载。
相反,当我访问www.domain.com/account/auth/login时,我看到了登录页面,而当我访问www.domain.com/account/login时,我被重定向到www.domain.com/account/auth/login。
这种行为似乎与文档描述的内容以及 SO 上的其他行为相反。我尝试交换$route变量的键和值,但这只会导致上述两个 url 的 404。
谁能指出我正确的方向?我在这里做错了什么?
谢谢
[编辑] - htaccess 的内容
RewriteEngine on
# remove index.php from url
RewriteCond $1 !^(index\.php|img|js|css|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /account/index.php/$1 [L]
# redirect non-www to www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]