У меня была такая же проблема, пока я не узнал, что не загружал url-helper. Странно то, что несколько разных браузеров вообще не выводили никаких сообщений об ошибках при просмотре html-источника, если ошибки произошли внутри оператора include.
Также не забудьте разрешить прямой доступ к этому каталогу в вашем файле .htaccess, если вы его используете.
Включите url-helper в файл application / config / autoload , например:
$autoload['helper'] = array('url');
Или сделать это на лету в вашем контроллере
$this->load->helper('url');
Если .htaccess блокирует доступ к файлу, вы можете исключить файлы dir:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt|stylesheets|javascript|files)
RewriteRule ^(.*)$ index.php/$1 [L]