いくつかのコントローラーがあるサイトで作業しており、Apache構成で一致する単純な正規表現を使用して、_http://www.Host.com/controller/function/params
_から_http://www.Host.com/index.php/controller/function/params
_への要求をリダイレクトするようにサーバーを構成しました。現在、コントローラーの1つを別のコントローラーにリダイレクトしようとしていますが、URLに_index.php
_を追加せずに、これがredirect()
関数の機能です。 codeigniterでこれを行う簡単な方法はありますか?よろしくお願いします!
redirect
を使用できます。インデックスページとして設定されている場合にのみ、index.php
が追加されます。
したがって、index_page
構成を確認してください。空の文字列である必要があります。
$config['index_page'] = '';
ファイル:app/config/config.php
詳細: http://www.codeigniter.com/user_guide/general/urls.html?highlight=mod_rewrite [更新バージョン]
$ config ['index_page'] = '';を使用しました機能した。
codeignitorベースのプロジェクトのルートフォルダーに別の.htaccessを追加し、以下の例のようにリダイレクトルールを書き込む必要があります。
RewriteEngine On
RewriteBase /codeignitortest/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) index.php?$1 [QSA,L]
または、application/config /config.phpで以下を作成できます
$ config ['index_page'] = 'index.php'; to $ config ['index_page'] = '';