перенаправление codeigniter не работает

#codeigniter #redirect

#codeigniter #перенаправление

Вопрос:

По какой-то причине я не могу определить, перенаправление в codeigniter не работает. Я получаю белый экран смерти.

Я настроил «тестовый» контроллер:

 class Test extends Controller {
    function Test() {
        parent::Controller();
        $this->load->helper('url');
    }

    function index() {
         redirect('home','refresh');

    }
}
  

(Я пробовал параметры местоположения и обновления, безрезультатно).

Вот мой файл .htaccess:

 DirectoryIndex index.php
RewriteEngine on
RewriteCond $1 !^(index.php|images|css|js|robots.txt|favicon.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
  

Я использовал все это раньше с хорошими результатами. Что-нибудь еще, что я могу проверить?

Спасибо.

Джон

Комментарии:

1. Хороший способ начать — включить все отладочные и информационные сообщения в config.php , установить пороговое значение журнала равным 4, удалить сегодняшний файл журнала, если он существует, и запустить ваш скрипт. Вы можете найти некоторую ценную информацию в файле журнала. Также на всякий случай убедитесь, что вы можете получить доступ к test / index в обычном режиме (попробуйте повторить что-нибудь).

2. что / где находится ваш home контроллер?

3. Madmartigan, я попробую то, что ты предлагаешь. Спасибо!

4. Росс, мой домашний контроллер — это домашняя страница сайта. Это работает нормально.

Ответ №1:

Как оказалось, установка порога регистрации на 4 была ответом на выяснение этого. Я смог определить, что я выводил некоторое пространство, что не позволяло перенаправлению работать. Просмотр журналов выявил это.

Спасибо всем за вашу помощь, и спасибо Madmartigan за предложение настройки журнала.

Ответ №2:

Попробуйте добавить? в конце index.php в вашем последнем правиле перезаписи как таковом:

RewriteRule ^(.*)$ ./index.php?/$1 [L,QSA]

Если это не сработает, попробуйте изменить ваш $config['uri_protocol'] (если для него установлено значение AUTO ) на:

$config['uri_protocol'] = 'REQUEST_URI';