2017-01-13 7 views
-1

が動作していない私のコンディショナーを混同し、私のコントローラのピックアップではありません、私のコントローラpractice.phpとコードは次のとおりです。CodeIgniterのコントローラは、私はCodeIgniterのビットに新しいです

class Practice extends CI_Controller 
{ 
    public function __construct() 
    { 
     parent::__construct(); 
    } 

    function foo() 
    { 
     echo 'Hello world'; 
    } 
    function index() 
    { 
     echo 'Hello index'; 
    } 
} 

私はローカルホスト/フォルダ名のようにそれをロードしようとしています/ practice/foo。なぜそのように働かないのだろう?

ありがとうございました。

注:実際には、contoller name index関数を使用しないデフォルトコントローラもlocalhost/foldername /と同じように動作しています。インデックス関数の結果が表示されます。

+0

を参照してくださいに

RewriteEngineなぜあなたはfoldernameが必要ですか? –

+0

prはcodeigniterがオフになっているフォルダです。私はアドレスバーにこのフォルダ名が必要です。 –

+1

localhost/foldername/index.php/practice/fooとPractice.phpファイルの名前をPractice.phpに変更します。 –

答えて

1

CodeIgniterのは言う:デフォルトで

、index.phpファイルは、あなたのURLに含まれます:

example.com/index.php/news/article/my_article

はこの1

localhost/foldername/index.php/practice/foo 
を使用してアクセスしてください

あなたがindex.phpをせずにアクセスしたい場合は、あなたのルートディレクトリに.htaccessファイルを作成し、このコードを配置する必要があります

RewriteBase /foldername/ 
# If your project is in server root then should be: RewriteBase/
# If your project is in folder then it should be: RewriteBase /foldername/ 

RewriteCond %{REQUEST_URI} ^system.* 
RewriteRule ^(.*)$ /index.php?/$1 [L] 

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

CodeIgniter URLs

関連する問題