CodeIgniterの初期状態ではURLに必ず「index.php」が入ります。
これを取り除く方法はマニュアルには入っているのですが、そのままコピペしてもエラーになるサーバーがあります。
.htaccessを以下のように書いたらOKでした。
<IfModule mod_rewrite.c> RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt|css) RewriteRule ^(.*)$ ./index.php/$1 [L] </IfModule>
要はindex.phpの前に./をつけて、現在のアドレスからの位置を特定しただけです。でもなぜ./がないと動かないのか?解決してません。