Por defecto, Codeigniter generas las url amigables pero con el «index.php» al comienzo:

Ej. de url en localhost:
http://localhost/bufa/index.php/welcome

Ej. de url en el servidor final:
https://www.bufa.es/index.php/welcome

A continuación los pasos necesarios para eliminar el «index.php»:

Basta con crear un archivo .htaccess en la carpeta raiz de la instalación de Codeigniter y insertar uno de los siguientes códigos:

A. Si lo estais probando en localhost (sustituyendo «bufa» por el nombre de la carpeta que hayáis utilizado)

RewriteEngine on 
RewriteCond $1 !^(index.php|public|robots.txt)
RewriteRule ^(.*)$ /bufa/index.php/$1 [L]

B. Si lo estais ya probando en el servidor web correspondiente de vuestro dominio:

RewriteEngine on 
RewriteCond $1 !^(index.php|public|robots.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

Y ya con el .htaccess las urls nos quedarían de la siguiente forma:

En localhost:
http://localhost/bufa/welcome

En el servidor final:
https://www.bufa.es/welcome

Agradezco tu comentario 🤘