如何从URL中删除控制器名称,使其在干净的codeigniter [英] How to remove controller name from url making it clean in codeigniter

查看:191
本文介绍了如何从URL中删除控制器名称,使其在干净的codeigniter的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有以下网址..

  http:// localhost / ci / site_controller / home 

我要移除 site_controller 控制器

  http:// localhost / ci / home 



如何在CodeIgniter中执行此操作?



注意:



编辑



我在我的routes.php中有这个

  $ route ['default_controller'] =site_controller / home; 
$ route ['ci / home'] ='ci / site_controller / home';
$ route ['404_override'] ='';

但仍无法运作!



strong> .htaccess

  RewriteEngine On 
RewriteBase / ci /
RewriteCond%{REQUEST_URI } ^ system。*
RewriteRule ^(。*)$ /index.php/$1 [L]

RewriteCond%{REQUEST_FILENAME}!-f
RewriteCond%{REQUEST_FILENAME} !-d
RewriteRule ^(。*)$ index.php / $ 1 [L]

ErrorDocument 404 /index.php


解决方案

您可以为每个网址设置路线:



在你的config / routes.php文件中,只需设置每个页面如下:

  $ route ['ci / home'] = ci / site_controller / home; 


I have the following url..

http://localhost/ci/site_controller/home

I want to remove site_controller controller from url resulting in..

 http://localhost/ci/home

How can I do this in CodeIgniter ?

Note: If you'll ask what I've tried than I've just done searching over Google as I don't know how to use mod_rewrite.

EDIT

I have this in my routes.php

$route['default_controller'] = "site_controller/home";
$route['ci/home'] = 'ci/site_controller/home';
$route['404_override'] = '';

but still not working!

.htaccess

RewriteEngine On
RewriteBase /ci/
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

ErrorDocument 404 /index.php

解决方案

You can set your a route for each url:

In your config/routes.php file, just set each page like this:

$route['ci/home'] = "ci/site_controller/home";

这篇关于如何从URL中删除控制器名称,使其在干净的codeigniter的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆