Удаление index.php из URL-адреса в codeigniter

Недавно я начал использовать codeigniter и разместил его на Bluehost здесь: http://dev.fuelingtheweb.com/codeigniter/.

Если я включил index.php в путь вот так: /codeigniter/index.php/hello, все работает нормально, но если я попытаюсь получить доступ к странице без index.php вот так: /codeigniter/hello, я получу 500 Internal Ошибка сервера. Я пробовал множество вариантов .htaccess, но ничего не работает.

В настоящее время мой файл .htaccess находится здесь: /codeigniter/.htaccess и включает следующий код:

<IfModule mod_rewrite.c>
  RewriteEngine on
  RewriteBase /codeigniter/
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.+)$ codeigniter/index.php/$1 [NC,L,QSA]
</IfModule>

<IfModule !mod_rewrite.c>
  ErrorDocument 404 index.php
</IfModule>

Кроме того, мой файл конфигурации (/codeigniter/application/config/config.php) включает следующее:

$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';

Я попробовал все 5 вариантов протокола без успеха.

Любая помощь в этом будет принята с благодарностью.


person fuelingtheweb    schedule 28.10.2011    source источник


Ответы (1)


Вы пробовали вариант из руководства пользователя?

https://www.codeigniter.com/user_guide/general/urls.html

person Vikk    schedule 28.10.2011
comment
Хорошо, потратив на это в общей сложности около 3 часов, я усвоил очень важный урок: Coda не любит файлы .htaccess. Я успешно получил файл .htaccess на сервере в нужной папке, но каждый раз, когда я публиковал изменения в файле, файл .htaccess, по-видимому, никогда не загружался на сервер. Таким образом, ни одно из моих изменений не было сделано. Итак, я использовал Dreamweaver для редактирования файла, и теперь он работает нормально. - person fuelingtheweb; 28.10.2011
comment
Вот код, который я сейчас использую: RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt) RewriteRule ^(.*)$ /codeigniter/index.php/$1 [L] - person fuelingtheweb; 28.10.2011