WAMP がインストールされたローカル マシンで動作する Codeigniter 2.1.4 で記述されたアプリケーションがあります。
プロジェクトを本番サーバーに移動すると、Codeigniter ルーティングが機能しなくなります。ログイン フォームはコントローラー メソッドを実行しますが、代わりに Web サイトのホームページにルーティングされます。アプリにログインしていないためのリダイレクト ロジックがある場合でも、手動で Web アプリの任意の部分に入ろうとすると、同じことが起こります。
私の運用サーバーには IIS6 と IsapiRewrite4 がインストールされています。
CodeIgniter に付属の .htaccess ファイルからすべての書き換えルールを IIRF.INI ファイルにコピーしようとしましたが、うまくいきません。
これらはデフォルトの .htaccess ルールです:
RewriteEngine on
RewriteCond $1 !^(index\.php|public|\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1
それを IIRF.INI ファイルに貼り付けることができると読みましたが、うまくいくはずですが、うまくいきませんでした。
また、IIRF.INI ファイルをどこに置くべきか正確にはわかりません。他の .htaccess がある CodeIgniter ルート ディレクトリを推測していました。
また、他にも .htaccess ファイルがあり、1 つは/coreフォルダー、1 つは/applicationフォルダー、1 つは/application/cacheフォルダーにあることに気付きました。
IIRF.INI ファイルを変更または追加する場合、運用サーバーで IIS を再起動する必要がありますか?
ここで提案されているルールも試してみましたが、うまくいきませんでした: IIS6 で IIRF と連携するように htaccess を構成する - codeigniter
誰でも助けることができますか?書き換えの問題でさえないのかもしれませんが、よくわかりません... 他の情報が必要な場合はお知らせください。