В вашем файле application/config/config.php вам необходимо установить уровень сообщений об ошибках, чтобы уловить ошибки php.
Как только эта опция включена, все ошибки php должны регистрироваться в папке system/logs.
Поскольку функция переадресации использует перенаправление заголовка, в браузер не отправляется контент (даже ошибки), в противном случае ваша переадресация перестанет работать.
Edit: Насколько я могу видеть, что вы хотите сделать 1 из 3 вещей:
Вариант 1 Отобразите ошибки и не делать какой-либо редирект на всех. Если это так, просто удалите функцию перенаправления из обработчика ошибок.
Вариант 2 Отображение ошибки, но перенаправление через определенный промежуток времени. Если это так, глядя на вашем делать другой тип заголовка перенаправления:
header("refresh:5;url=/somewhere/else");
Это будет после 5 секунд перенаправлять браузер на где-то/другом.
Вариант 3 Условно сделать редирект (если в разработке показать ошибку, если не при разработке, не показывает ошибку).
Чтобы сделать это, добавьте условный оператор в обработчик ошибок Ignit Code, чтобы проверить, находитесь ли вы в режиме разработки или проверьте свой ip, а затем выполните перенаправление в зависимости от них.
Это то, что вы ищете? Или это больше похоже на перенаправление, если не было ошибки php? Если да, то откуда вы вызываете функцию перенаправления?
У меня та же проблема. Раньше я получал предупреждение «заголовки уже отправил», помимо самих ошибок, что было хорошо. – scribu