我的网址链接如下:
http://localhost/CodeIgniter_2.1.2/index.php/pages/home
然后我使用谷歌编写了.htaccess文件,如下所示:
RewriteEngine on
RewriteCond $1 !^(index\.php|themes|images|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]
现在我的链接如下:
http://localhost/CodeIgniter_2.1.2/pages/home
现在,我想从此链接中删除pages
。任何人都可以帮我解决这个问题吗?
所以,我的网址可能如下:
http://localhost/CodeIgniter_2.1.2/home
答案 0 :(得分:1)
一种方法是在application / config / routes.php文件中创建一个自定义路由,该文件将URL“http://localhost/CodeIgniter_2.1.2/home”路由到'http:// localhost / CodeIgniter_2.1.2 /页/家“
自定义路由描述为here
代码看起来像:
$route['home'] = "pages/home";
编辑
您的控制器,方法和变量分别命名为“pages”,“view”和“home”。因此,您应该尝试以下路线:
$route['home'] = "pages/view/home";
此外:
**预留路线** 来自codeigniter文档:
有两条保留路线:
$route['default_controller'] = 'welcome';
如果URI不包含数据,则此路由指示应加载哪个控制器类,这是人们加载根URL时的情况。在上面的示例中,将加载“welcome”类。我们鼓励您始终使用默认路由,否则默认情况下会显示404页面。
因此,您不应将默认控制器设置为“pages / view / home”。相反,您应该在控制器中创建一个默认为“主页”视图的“索引”方法。
同时强> 不要忘记在application / config / config.php中的config.php文件中将$ config ['index_page']从'index.php'更改为''。
答案 1 :(得分:0)
尝试更改规则,以便目标为:
RewriteRule ^(.*)$ index.php/pages/$1 [L]