Сделать localhost / вызвать контроллер в CodeIgniter - PullRequest
1 голос
/ 09 июля 2011

Я использую codeigniter и использую .htaccess для перезаписи localhost/index.php/some_class как localhost/some_class.

Как я могу localhost/ сам вызвать определенный контроллер? как в localhost будет класс и localhost/some_func будет возможно.

РЕДАКТИРОВАТЬ:

Это мой текущий .htaccess:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt|css)
RewriteRule ^(.*)$ /index.php/$1 [L] 

Ответы [ 2 ]

3 голосов
/ 09 июля 2011

Вы хотите отредактировать application / config / rout.php

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

При изменении default_controller это вызовет функцию индекса some_class.Вы не сможете вызывать localhost / my_function, где my_function принадлежит some_class, используя этот метод.

Редактировать:

Я неправильно прочитал ваше сообщение, вы хотите отредактировать ваш файл htaccess, чтобы перенаправить все в some_class,Если вы опубликуете свой .htaccess, мы можем вам помочь.

Примерно так:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|stylesheets|scripts|robots\.txt)
RewriteRule ^(.*)$ /index.php/some_class/$1 [L]

Примечание. Этот вид идет вразрез со структурой MVC.

0 голосов
/ 09 июля 2011

Да, вам придется определить контроллер по умолчанию, который будет выполнять свою индексную функцию при вызове localhost /

, но вы также можете сделать другое, о чем вы думали, - перехватить напрямую с помощьютот контроллер без имени контроллера

localhost/some_func

вам нужно использовать подстановочные знаки в маршрутах, вот как

...