0

WAMP で CodeIgniter を使用しています。Apache の Mod_Rewrite Module がロードされます。私の CI プロジェクトはC:\wamp\www\store 、Codeigniter の URL ドキュメント (こちら) から書き換えルールをコピーしました:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

私が開こうとしているリンクはlocalhost/store/city 、ルールが起動しないようです。上記のアドレスを開こうとすると、ブラウザのデフォルトの 404 (CI ではありません) が表示され、書き換えは行われていないようです。localhost/store/index.php/city正しいページをロードすると、ロードされます。ルールが実行されないのはなぜですか?

4

4 に答える 4

3

変更してみてください

RewriteRule ^(.*)$ /index.php/$1 [L]

RewriteRule ^(.*)$ ./index.php/$1 [L]

あなたのメソッドは、ベースから URL をロードしようとしていました

localhost/index.php/city
于 2013-05-02T06:55:54.543 に答える
0

.htaccess ファイルで次のコードを使用します。

RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

これは確かにあなたを助けるでしょう:)

于 2013-05-02T07:10:24.777 に答える
0

application/config/config.php では、次のようにインデックス ページを空白に設定する必要があります。

$config['index_page'] = '';
于 2013-05-02T12:46:15.113 に答える
0

このルールをファイルに配置しました。

RewriteRule (.*) http://test.com

結局のところ、書き換えルールはまったく実行されていませんでした。.HTaccess ファイルを移動する必要がありました。CI はそれを Application フォルダに配置しました。親フォルダーからドラッグしたところ、すべて正常に動作するようになりました。奇妙なこと。

于 2013-05-03T15:49:36.947 に答える