Я новичок в воспламенителе кода, и все мои ссылки имеют этот путь "/folder/file". Поэтому я ожидаю, что когда я вызову ссылку, она должна показать:
www.website.com/folder/file
но когда я нажимаю на него, он переходит к следующему:
www.website.com/index.php/folder/file
Как я могу предотвратить это? Я хочу, чтобы он был относительным.
Нужно ли мне прикасаться к чему-то в конфигах?
Проверь это
В 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
Если вы хотите удалить index.php из url, просто выполните следующие шаги:
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 ['index_page'] на blank в config.php в папке приложения, как показано ниже:
$config['index_page'] = '';
3) Включите "rewrite_module" для apache.
RewriteBase /CodeIgniter/
Какая версия?
Если в случае ur с использованием 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>