Как "index.php"
в codeigniter где-то в центре убрать торчащие на всех дорожках? Я хочу чистый нон index.php-fied URLs
?
php
mod-rewrite
codeigniter
url-rewriting
OrangeRind
источник
источник
Ответы:
Если вы используете Apache, поместите файл .htaccess в корневой веб-каталог, содержащий следующее:
Еще одна хорошая версия находится здесь:
http://snipplr.com/view/5966/codeigniter-htaccess/
источник
RewriteCond $1 !^\/(index\.php|assets|robots\.txt)
У меня были большие проблемы с удалением index.php. Как правило, указанный ниже файл .htaccess был протестирован на нескольких серверах и в целом работает:
Если вам не повезло, следующим шагом будет корректировка файла конфигурации. Попробуйте некоторые другие протоколы URI, например
Если вам по-прежнему не повезло, попробуйте изменить правило перезаписи, включив в него вашу подпапку. Это часто является проблемой, если вы используете временный URL-адрес на сервере разработки и т. Д .:
Просто поиграйте с этими вариантами, надо работать. Также убедитесь, что ваш индексный файл установлен на:
Удачи!
источник
Поместите файл.htaccess в корневой каталог приложения вместе с файлом index.php. (Проверьте правильность расширения htaccess, у меня Bz htaccess.txt не работал.)
И добавьте следующие правила в файл .htaccess,
Затем найдите следующую строку в файле application / config / config.php
Установите переменную пустой, как показано ниже.
Вот и все, у меня это сработало.
Если это не сработает, попробуйте заменить следующие переменные этими параметрами ('AUTO', 'PATH_INFO', 'QUERY_STRING', 'REQUEST_URI' и 'ORIG_PATH_INFO') один за другим.
источник
Загляните в
system\application\config\config.php
файл, там есть переменная с именемindex_page
Это должно выглядеть так
измените это на
Затем, как уже упоминалось, вам также необходимо добавить правило перезаписи в
.htaccess
файлПримечание: в CodeIgniter v2 этот файл был перемещен из системной папки в
application\config\config.php
источник
Все вышеперечисленные методы не помогли мне, а затем я обнаружил, что не меняю AllowOverride None на AllowOverride All в моем файле виртуального хоста в / etc / apache2 / sites-available / default
источник
источник
источник
Просто подумал, что могу добавить
будет .htaccess и обязательно отредактируйте переменную application / config.php следующим образом:
замещать
с участием
источник
Это определенно должно сработать .. попробуйте
источник
Убедитесь, что вы включили
mod_rewrite
(я этого не делал).Включить:
Также замените
AllowOverride None
наAllowOverride All
Finaly ...
Мой .htaccess
источник
actions
: stackoverflow.com/questions/14419757/…Идеальное решение [проверено как на локальном хосте, так и на реальном домене]
источник
Это .htaccess для одного из моих проектов CI:
Последняя строка должна дать вам то, что вам нужно, хотя вам может понадобиться или не понадобится '/ projectFolder' в зависимости от того, как настроена ваша структура папок. Удачи!
источник
Используйте,
mod_rewrite
как указано в этом руководстве, из вики CI.источник
В качестве файла .htaccess можно использовать файл, предоставляемый Kohana Framework :
Это хорошо продуманный .htaccess, который просто работает.
источник
Есть два способа решить index.php в URL-адресе для codeigniter
1: В config / config.php Изменить код:
в
2: Создайте .htacess в корневом пути, если он не создан, скопируйте следующий код: -
Сохраните его, а затем проверьте в своей конфигурации Apache rewrite_module ИЛИ mod_rewrite включен. Если нет, включите. (Лучший подход)!
источник
Я тестировал это на apache2 на многих разных хостингах, и он отлично работает.
используйте этот htaccess
быть уверены , что у вас есть
enabled mod_rewirte
сphpinfo();
затем сделайте это в config / config.php:
если он еще не работает, попробуйте изменить его
$config['uri_protocol']='AUTO'
на один из внутреннихapplication/config/config.php
файлов, перечисленных в строке 40/54:иногда я использовал:
REQUEST_URI
вместо хостинга goDaddyAUTO
или"QUERY_STRING"
для негоисточник
Посмотрите в
\application\config\config.php
файле, есть переменная с именемindex_page
Это должно выглядеть так
измените это на
Затем, как уже упоминалось, вам также необходимо добавить правило перезаписи в
.htaccess
файл следующим образом:Это сработает для меня, надеюсь, вы тоже.
источник
Если вы используете Linux и сервер apache2, нам может потребоваться переопределить файл apache2.conf, а также изменения в файле .htaccess. Найдите файл конфигурации apache2 в /etc/apache2/apache2.conf .
Каталог поиска / var / www / Изменить AllowOverride None -> AllowOverride All
источник
поместите файл .htaccess в свой корневой веб-каталог
Какие бы настройки вы ни делали - если вышеуказанное не выполняется - это не сработает. Обычно он находится в системной папке, он должен быть в корне. Ура!
источник
application
каталог, а не в корневой каталог.Я пробовал много решений, но я придумал следующее:
Это при необходимости удалит index.php из URL-адреса.
источник
Я использую эти строки в
.htaccess
файле; который я помещаю в корневую папкуЗатем я могу получить доступ к http://example.com/controller/function/parameter
вместо http://example.com/index.php/controller/function/parameter
источник
Это поможет вам вставить этот код в папку приложения в файле .htacess.
источник
Это произвело на меня полную магию:
Надеюсь, поможет!
источник
Привет, это сработало у меня
а также это
где папка - это имя подпапки, если это приложение codeigniter размещено как поддомен, например, имя домена / папка / index.php.
Надеюсь, это сработает для вас. Спасибо.
источник
Скопируйте следующий код в свой .htaccess
источник
источник
Шаг 1 :
Добавьте это в файл htaccess
Шаг 2 :
Удалите index.php в конфигурации codeigniter
Шаг 3 :
Разрешить переопределение htaccess в конфигурации Apache (команда)
sudo nano /etc/apache2/apache2.conf и отредактируйте файл и измените его на
для папки www
Шаг 4:
Включена перезапись мода apache (команда)
Шаг 5:
Перезапустить Apache (команда)
источник