Вы пропускаете index.php в URL-адресе, что означает, что вы ожидаете, что файл .htaccess направит запрос в главный index.php CodeIgniters.
Используйте URL-адрес /login/index.php/welcome/ main, чтобы проверить, если ваш файл .htaccess неисправен или отсутствует.Если вы переименовали или переместили каталог, в котором он находится, в 'login', вы, возможно, забыли обновить его.
Ваш .htaccess в каталоге 'login' должен выглядеть примерно так -
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /login/index.php/$1 [L]
Если бы он находил основной index.php и ошибка была связана с проблемой именования вида / модели / контроллера, вы бы получили 404 от CodeIgniter, а не от Apache.