У меня проблема с CodeIgniter, и только тогда, когда изображение не найдено на сервере, создается экземпляр контроллера (помимо того, который называется представлением).Контроллер Codeigniter, созданный, когда изображение не найдено
Я знаю, все это может показаться запутанным, так что это код для наблюдения за тем, что я говорю. Я сделал это изменение в чистую версию 2.1.0 CI:
Добавить контроллер для переопределения страницы ошибки 404, я добавил этот:
// add application/controllers/Errors.php
Class Errors extends CI_Controller {
public function error_404() {
echo 'error';
}
}
// change routes.php
$route['404_override'] = 'Errors/error_404';
Используйте контроллер, который не является по умолчанию один с unexisting изображение, я использовал это:
// add application/controllers/Foo.php
Class Foo extends CI_Controller {
public function index() {
echo '<img src="doesntexist.png" />';
}
}
Я не мог понять другой способ отладки, поэтому я создал журнал для записи событий на CodeIgniter.php:
// add on CodeIgniter.php line 356
$path = 'log.txt'; //Place log where you can find it
$file = fopen($path, 'a');
fwrite($file, "Calling method {$class}/{$method} with request {$_SERVER['REQUEST_URI']}\r\n");
fclose($file);
При этом, журнал, который генерирует посещения функции индекса заключается в следующем:
Calling method Foo/index with request /test/index.php/Foo
Calling method Errors/error_404 with request /test/index.php/doesntexist.png
Какая проблема у меня есть, экземпляр класса Error создается.