2012-02-12 23 views
0

私は最新のCodeIgniterをインストールし、welcome.phpをbackend.phpにコピーし、クラス変数をバックエンドに変更しました。しかし、/ backendに行くと、コントローラが見つかりませんでした。私の.htaccessの内容は以下の通りです。CodeIgniter新しいコントローラが見つかりませんか?

# Do not remove this line, otherwise mod_rewrite rules will stop working 
RewriteBase/
Options +FollowSymLinks 
RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /index.php?/$1 [QSA,L] 

私もuriを要求するuriメソッドを変更しようとしましたが、それでも同じ問題です。

インデックスコントローラは機能しますが、インデックスから作成されたバックエンドは動作しません。 (welcome.php)

答えて

2

チェックbackend.phpで定義されたクラス名がBackendの場合:

class Backend extends CI_Controller { ... } 

あなたはBackendコントローラ方法index(デフォルトのアクション)を持っていることを確認してください:

public function index() { ... } 

PS:新しいディレクトリbackendを作成し、必要なコントローラをすべてバックエンドに置くこともできます。これにより、バックエンド領域に複雑な機能がある場合には、作業が簡単になります。

+0

奇妙なことに、元のウェルカムファイルからコメントを削除する必要がありました。問題が解決されたので私はあなたの答えを選ぶつもりです。 –

1

あなたはhtaccessファイルが必要です。

<IfModule mod_rewrite.c> 
RewriteEngine on 


RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?/$1 [L] 
</IfModule> 

問題コントローラは/ URLのインデックスと、コントローラ名を追加することによってアクセスすることができることです。

したがって、この問題を解決するにはhtaccessファイルが必要です。

関連する問題