#.htaccess #codeigniter-2
#.htaccess #codeigniter-2
Вопрос:
Я пытаюсь удалить index.php из URL-адреса в codeigniter. Сценарии перезаписи модов повсюду, но я не могу найти файл .htaccess!! Я попытался заглянуть в корневой каталог и везде еще, но безуспешно.
Из того, что я прочитал, он должен быть в папке приложения, и когда я захожу туда, я нахожу файл .htaccess, и все, что у него есть, это запретить для всех. Это не тот контент, которым все остальные делятся в Интернете до внесения изменений.
Пожалуйста, сообщите.
Ответ №1:
На самом деле вы его не находите; вы создаете его вместе со своим index.php файл с таким содержимым:
RewriteEngine on
RewriteCond $1 !^(index.php|images|robots.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
В приведенном выше примере любой HTTP-запрос, отличный от запроса для index.php ,
изображения и robots.txt рассматривается как запрос на ваше index.php
досье.
Комментарии:
1. ОК. Я удалил тот, который существовал, создал новый и добавил приведенный выше код. Если я удалю index.php по URL-адресу я по-прежнему получаю сообщение об ошибке, что он не был найден.
Ответ №2:
Решение заключается в следующем (для будущих ссылок)
Создайте файл .htaccess в корневом каталоге приложения codeigniter (где у вас есть папки system, application и т. Д.).
Вставьте в него этот код:
RewriteEngine on
RewriteCond $1 !^(index.php|resources|robots.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]
Открыть config.php и измениться index = "index.php" to ""
. Теперь все должно работать.