How to hide controller name in the url in CodeIgni

2019-02-10 00:24发布

问题:

so the thing is I'm using .htaccess to hide the index.php but I still get the controller name in the url like that: http://example.com/name_controller/about My question is: is it possible to hide the name of the controller, so that only method is shown? hxxp://example.com/name_controller/about

回答1:

You can define a custom route in config/routes.php - for example:

$route['about'] = 'name_controller/about';

Then, http://example.com/about
goes to http://example.com/name_controller/about

See Hiding the controller’s method name in the URL? in the CI forums for more information.



回答2:

You can add an entry in the /system/application/config/routes.php file:

$route['about'] = "controller_name/about";


回答3:

I did it like this: (config/routes.php)

Code: $route['((photos|blogs).+)'] = "$1";

$route['([a-zA-Z0-9_-]+)'] = "user/profile/$1";

it is ok correct solutions for common.



回答4:

$route['default_controller'] = "xxx";

home

$route['home'] = "xxx/home";

function_name/parameter0/parameter1/parameter2

$route['Collection/(:any)'] = "xxx/Collection/$1";