Как обрабатывать базовые URL-адреса в CodeIgniter?

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

http://localhost/myproject/welcome

но я также хочу обрабатывать звонки на базовый URL

http://localhost/myproject/

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

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller
{
public function index()
{
$this->load->view('welcome_message');
}
}

Редактировать:
Я объявил контроллер приветствия контроллером по умолчанию

$route['default_controller'] = 'welcome';

Это htaccess

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

0

Решение

Так как похоже, что вы хотите удалить index из вашего URL, я предлагаю вам сначала установить свой .htaccess сделать именно это:

 RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Второй шаг:

Проверьте CI config.php и установить $config['base_url'] туда, где когда-либо ваш index.php файл находится (вы сказали, что хотели http://localhost/myproject/, Не оставляйте после себя обратную косую черту.)

Установите свойconfig['index_page'] значение для '' (Пусто)

Вы уже установили свой контроллер по умолчанию, с вами все будет хорошо.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector