登録やログインなどを処理するために Tank_auth を利用しています。私の CI は、ドメイン ルートのサブフォルダー (例: www.domain.com/account/) にあります。
例:
ログインコントローラーは認証/ログインなので、私のURLはwww.domain.com/account/auth/loginです
www.domain.com/account/auth/loginをwww.domain.com/account/loginに変更したいので、routes.php 設定ファイルに次の行を追加しました。
$route['login'] = 'auth/login';
これで、 www.domain.com/account/auth/loginにアクセスすると、 www.domain.com/account/loginに移動することが予想され ます。www.domain.com/account/loginにアクセスすると、その URL にとどまり、ページが正しく読み込まれるはずです。
代わりに、www.domain.com/account/auth/loginにアクセスするとログインページが表示され、 www.domain.com/account/login にアクセスするとwww.domain.com/account/auth/loginにリダイレクトされます。
この動作は、ドキュメントに記載されている内容や SO の他の動作とは反対のようです。$route変数のキーと値を交換しようとしましたが、上記の両方の URL で 404 が発生します。
誰かが私を正しい方向に向けることができますか? ここで何が間違っていますか?
ありがとう
[編集] - htaccessの内容
RewriteEngine on
# remove index.php from url
RewriteCond $1 !^(index\.php|img|js|css|robots\.txt|favicon\.ico)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /account/index.php/$1 [L]
# redirect non-www to www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]