Codeigniter 3.0 не работает на Bluehost
Когда я запускаю приложение Codeigniter 3.0 на локальном сервере, оно работает нормально. Однако, когда я загрузил его в Bluehost, он не работает.
Сам по себе Codeigniter работает, но я получаю Codeingiter 404, а не Apache 404 - страница получает стиль и т. Д. И т. Д.
Я думаю, что проблема связана с Codeigniter 3.0 и Bluehost, так как я загрузил 2 разных приложения в BH.
Когда я использую Codeigniter 2.x, все работает нормально.
2 ответа
Начиная с CodeIgniter 3.0, все имена файлов классов (библиотеки, драйверы, контроллеры и модели) должны именоваться в стиле Ucfirst или другими словами - они должны начинаться с заглавной буквы.
Контроллеры:
application/controllers/welcome.php
в application/controllers/Welcome.php
Модели:
application/models/misc_model.php
в application/models/Misc_model.php
Источник: Преобразование имен файлов классов в CodeIgniter
Обратите внимание, что это НЕ влияет на каталоги, файлы конфигурации, представления, помощники, хуки и все остальное - это применяется только к классам.
Теперь вы должны следовать только одному простому правилу - имена классов в Ucfirst и все остальное в нижнем регистре.
а также .htaccess
должно быть
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
Я надеюсь, что следующий.htaccess будет работать для вас:
RewriteEngine on
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]