URL-маршрутизация для этого в CodeIgniter - PullRequest
0 голосов
/ 12 марта 2012

Я запускаю проект на PHP с CodIgniter, и у меня есть проект под wamp/www/myproject.Когда я запускаю localhost и нажимаю на мой проект, URL выглядит так:

localhost/myproject

Я хочу иметь такую ​​маршрутизацию, что когда кто-то приходит и набирает

localhost/myproject/box/123

он должен быть перенаправлен на контроллер home и метод box.

Как я могу это сделать?

1 Ответ

3 голосов
/ 12 марта 2012

Перейдите в файл конфигурации маршрутов (я полагаю, вы знаете, где) и добавьте следующее:

$route['box/(:num)'] = 'home/box/$1';

Все, что имеет box/[any number], будет перенаправлено на метод home/box и совпадение с (:num) в качестве первого параметра.

Итак, ваш

http://localhost/myproject/index.php/box/123

будет перенаправлен на: («отображается, как если бы вы использовали»)

http://localhost/myproject/index.php/home/box/123

(Я полагаю, что у вас еще не было движка перезаписи, удалите index.php из URL.)


Из путеводителя :

Удаление файла index.php

По умолчанию файл index.php будет включен в ваши URL :

http://example.com/index.php/news/article/my_article

Вы можете легко удалить этот файл, используя файл .htaccess с некоторыми простыми правилами. Вот пример такого файла, использующего «отрицательный» метод, в котором все перенаправлено, кроме указанных элементов:

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

В приведенном выше примере любой HTTP-запрос, кроме запросов к index.php, images и robots.txt, обрабатывается как запрос для вашего файла index.php.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...