2

codeigniter を Web サーバーに移動するのは初めてで、構成に問題があります。ルート ディレクトリの myurl.com の下にある www の codeigniter プロジェクト フォルダはどこに配置すればよいですか? アプリケーション フォルダとシステム フォルダを移動する必要がありますか?

index.php を削除しようとしていますか? URL 名から .htaccess ファイルをルートまたは codeigniter ディレクトリと同じフォルダーのどこに配置すればよいですか?

(www.myurl.com) と入力して、home_controller/index にリダイレクトできるようにしたいのですが、これは可能ですか?

ここに画像の説明を入力

以下は私の.htaccessファイル全体です

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /MMSFL/


#'system' can be replaced if you have renamed your system folder.
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]


#Rename 'application' to your applications folder name.
RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php/$1 [L]


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

<IfModule !mod_rewrite.c>


ErrorDocument 404 /index.php
</IfModule>

config/routes にも次の変更を加えました

    $config['index_page'] = "";
    $config['base_url'] = "http://myurl.com/";
    $config['server_root'] = $_SERVER['DOCUMENT_ROOT'];
    $config['uri_protocol'] = 'AUTO';

$route['default_controller'] = "home_controller";
4

2 に答える 2

3

ディレクトリ構造

可能であれば、systemおよびapplicationフォルダーを Web ルートの上に保持することをお勧めします。ファイルindex.phpはブラウザからアクセスできる必要があるため、public_htmlフォルダに入れる必要があります。使用できるディレクトリ構造は次のとおりです。

-/home/edd
    -public_html
        -index.html
        -.htaccess
    -system
    -application

必要に応じて、システム フォルダーとアプリケーション フォルダーの名前を変更したり、それらを配置する別のサブディレクトリを作成したりできます。


index.php

その中で、システムおよびアプリケーション フォルダーの場所と名前を更新して反映index.phpする必要があります。絶対パスまたは相対パスを使用できます。以下に相対パスを示します。$system_path$application_folder

$system_path = '../../system';
$application_folder = '../../application';

.htaccess

ファイルの最初の 2 つのセクションは.htaccess、ユーザーがシステムおよびアプリケーション フォルダーにアクセスできないようにするためにあります。それらをWebルートの上に保存している場合、これは本当に必要ありません。それらを保持する場合は、パスを更新する必要があります。このファイルは、public_htmlフォルダーに配置する必要があります。


アプリケーション/設定/config.php

既に正しく行っているように、index.php値を構成から削除する必要があるindex_pageため、 .htaccessファイルを使用して URL からindex.phpを削除できます。

$config['index_page'] = 'index.php';

次のように変更する必要があります。

$config['index_page'] = '';

この変更を行う必要がある場合もあります。

$config['uri_protocol'] = 'REQUEST_URI';

(この値がうまくいかない場合は、他の値を試してみてください。うまくいくはずです!)


application/config/routes.php

$route['default_controller'] = "home_controller";

(それがコントローラーの名前であると仮定します。)


サイトは、CSS や JavaScript などの一部のアセットに依存している可能性があります。これらは Web ルートにある必要があります - public_html. これらのファイルは自由に整理できます。

于 2012-09-05T21:14:25.190 に答える
0

CI フォルダー内にあるすべてのファイルを に移動しますpublic_html。この.htaccessファイルは、のルートpublic_html(アプリケーション、システム、index.php なども存在する場所) に配置する必要があります。

補足:$config値を入れないでください/config/routes.php- 入れる必要があります/config/config.php

于 2012-09-05T13:50:40.900 に答える