我已将默认控制器设置为登录页面。成功登录后,将重定向用户
to www.mydomain.com/home.
Home是我的路线名称,我现在要做的就是删除它
回家.htaccess
- 文件。
这甚至可能吗?
我目前的.htaccess看起来像这样:
DirectoryIndex index.php
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|public|images|css|js|robots\.txt)
RewriteRule ^(.*)$ index.php?/$1 [L]
答案 0 :(得分:0)
尝试添加:
RewriteCond %{THE_REQUEST} \ /+home($|\ |\?)
RewriteRule ^ / [L,R]
RewriteRule ^$ index\.php?/home [L]
在您已有的规则之前。
答案 1 :(得分:0)
我不认为你可以在没有获得重定向循环的情况下从.htaccess那样做。所以这里有两个解决方案。
在过去的项目中,我使用了默认控制器(在你的情况下为Home),然后创建了一个会话检查库,如果用户没有登录,它将重定向到登录页面。这很简单检查用户登录时设置的$this->session->userdata('auth') == true
,并且库方法调用是在默认控制器的构造函数中。默认控制器将只包含您正在寻找的基本网址。
OR
您可以查看another post by Justin Ethier
You can define a custom route in config/routes.php - for example:
$route['about'] = 'name_controller/about';
Then, http://example.com/about的上一个答案 转到http://example.com/name_controller/about
请参阅在URL中隐藏控制器的方法名称?在CI论坛中获取更多信息。