web-dev-qa-db-ja.com

index.phpを追加せずにCodeigniterURLリダイレクト

いくつかのコントローラーがあるサイトで作業しており、Apache構成で一致する単純な正規表現を使用して、_http://www.Host.com/controller/function/params_から_http://www.Host.com/index.php/controller/function/params_への要求をリダイレクトするようにサーバーを構成しました。現在、コントローラーの1つを別のコントローラーにリダイレクトしようとしていますが、URLに_index.php_を追加せずに、これがredirect()関数の機能です。 codeigniterでこれを行う簡単な方法はありますか?よろしくお願いします!

17
SuperTron

redirectを使用できます。インデックスページとして設定されている場合にのみ、index.phpが追加されます。

したがって、index_page構成を確認してください。空の文字列である必要があります。

$config['index_page'] = '';

ファイル:app/config/config.php

詳細: http://www.codeigniter.com/user_guide/general/urls.html?highlight=mod_rewrite [更新バージョン]

77
J. Bruni

$ config ['index_page'] = '';を使用しました機能した。

1
Gagan

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'] = '';

0
amar nath jena