-3

CodeIgniterは初めてです。私はWindows 8 にXAMPPサーバーを持っています。すべて問題ありませんが、問題は私の URL に関するもので、見栄えがよくありません。( CodeIgniter のルート フォルダはlocalhost/ci/index.php/site/homeどこにありますか) のようになります。ciのように URL をもっときれいにしたいのですが localhost/ci/home、どうすればよいですか?

私の CodeIgniter のバージョンは 2.1.2 です。

私はすでにいくつかの調査を行っていますが、ほとんどの場合.htaccess、CodeIgniter のファイルを変更するように指示されています。.htaccessしかし、ファイルには何もありません。「Deny from all」という行を除いて、空です。

4

3 に答える 3

1

でこれを行うことができますconfig/config.php

$config['base_url'] = 'http://'.$_SERVER['HTTP_HOST']; //you can also leave blank this CI tend to find this by himself
$config['index_page'] = '';

そして、次のことを試してください.htaccess。多くのサイトで使用していますが、満足しています。

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]

まだ動作していない場合は、を使用して、phpinfo();mod_rewrite が かどうかを確認してくださいenabled。有効になっていない場合は、Stack Overflow の質問How do you enable mod_rewrite?の指示に従ってください。それを可能にします。

mod_rewrite がenabledまだ機能していない場合は、これらを次のように切り替えてみてくださいconfig/config.php

$config['uri_protocol'] = 'AUTO'; //If not working, try one of these:
     'PATH_INFO'        Uses the PATH_INFO
    | 'QUERY_STRING'    Uses the QUERY_STRING
    | 'REQUEST_URI'     Uses the REQUEST_URI
    | 'ORIG_PATH_INFO'  Uses the ORIG_PATH_INFO
于 2013-01-04T21:30:28.897 に答える
0

「すべて拒否」を次のように置き換える必要があります。

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

http://ellislab.com/codeigniter/user-guide/general/urls.html

于 2013-01-04T21:29:55.127 に答える
0

公式ドキュメントを見ると、CodeIgniter URLs :

このファイルは、.htaccess ファイルといくつかの単純なルールを使用して簡単に削除できます。指定されたアイテムを除くすべてがリダイレクトされる「ネガティブ」メソッドを使用した、そのようなファイルの例を次に示します。

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

また、Apache を使用している場合は、ルート Web ディレクトリに .htaccess ファイルを配置します。詳細については、Codeigniter .htaccessを参照してください。

于 2013-01-04T21:30:54.787 に答える