0

私はコードイグナイターにかなり慣れていないので、すべてのリンクにこのパス "/folder/file" があります。したがって、リンクを呼び出すと、次のように表示されるはずです。

www.website.com/folder/file

しかし、代わりにクリックすると、次のようになります。

www.website.com/index.php/folder/file

どうすればそれを防ぐことができますか? それも相対的であってほしい。

設定で何かに触れる必要がありますか?

4

3 に答える 3

0

URL から index.php を削除する場合は、以下の手順に従ってください。

1) アプリケーション ホルダーと並行して .htacess ファイルを作成し、次のコードをコピーするだけです。

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

2) 以下のように、アプリケーション フォルダーの config.php で $config['index_page'] を空白に変更します。

$config['index_page'] = '';

3) Apache の「rewrite_module」を有効にします。

私の詳細ブログ: http://change-in-codeigniter.blogspot.in/

于 2013-10-22T05:08:55.513 に答える
0

IIS を使用している場合は、ルート ディレクトリに web.config というファイルを作成し、以下を貼り付ける必要があります。

<system.webServer>

    <httpErrors errorMode="Detailed" />
    <asp scriptErrorSentToBrowser="true"/>

    <rewrite>
    <rules>
        <rule name="RuleRemoveIndex" stopProcessing="true">
            <match url="^(.*)$" ignoreCase="false" />
            <conditions>
                <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
            </conditions>
            <action type="Rewrite" url="index.php/{R:1}" appendQueryString="true"/>
        </rule>
    </rules>
    </rewrite>

</system.webServer>

<system.web>
    <customErrors mode="Off"/>
    <compilation debug="true"/>
</system.web>

于 2013-10-22T05:31:52.923 に答える
0

これをチェックして

config.php について

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

.htaccess について

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
于 2013-10-22T05:44:44.927 に答える