1

codeigniter routes.php について:

C:\wamp\www\application\config\routes.php に次のエントリがあります。

$route['default_controller'] = 'latestC';
$route['404_override'] = 'latestC';

latestC はデフォルトのコントローラーです。ここで default_controller は本番環境では機能していません。行 $route['404_override'] = 'latestC'; を削除すると、routes.php から、メイン URL mozvo.com とその 404 にアクセスしている間、ホームページに到達できません。基本的に、404_override は、mozvo.com にアクセスしてホームページに移動するための default_controller の代わりに私たちのために仕事をしています。リクエストは 404_override コントローラーによってホームページにルーティングされます。

しかし、ローカルホストでは、完全に機能します。localhost で 404_controller を削除すると、default_controller がメイン URL (mozvo.com、ここでは localhost ) を処理し、サポートされていないその他の URL は 404 になります。これは正しいです。しかし、本番環境では、default_controller はホームページ (mozvo.com) に適切に取り込まないため、デフォルトのリクエストをホームページに取り込むために 404_override を使用する必要があります。

追加情報 - C:\wamp\www\application\config\config.php のエントリ

$config['base_url']    = 'http://mozvo.com/';
$config['index_page'] = '';
4

1 に答える 1

8

問題はファイルの大文字と小文字の区別によるものだと思います。あなたのローカルホストは WAMP 上にあります - Windows はファイルケースを気にしません。

すなわち latestC.php = latestc.php = LASTESTC.php

しかし、本番サーバー(LAMPであると推測しています)では、大文字と小文字の区別は重要です

すなわち latestC.php != latestc.php != LASTESTC.php

Codeigniter では、すべてのコントローラーを LOWERCASE にする必要があります。ルートを次のように変更します

$route['default_controller'] = 'latestc'; // all lowercase
$route['404_override'] = 'latestc'; //all lowercase

すべてのファイルがすべて小文字であることを確認してください

于 2012-06-09T13:22:07.283 に答える