Работая с Kohana 3.0 без фронт-контроллера index.php внезапно столкнулся с ошибкой No input file specified.
Причём главная страница работала нормально, а чуть в глубь – не находит. Причём на локалке работало нормально, а на хостинге у клиента – не хочет!
Поскольку природу явления я не понял – юзал гугл. А гугл довольно быстро выдал мне, что у меня какие-то не такие настройки сервера на хостинге и в таком случае нужно колдовать с .htaccess
Первое рабочее решение предлагало заменить
1 | RewriteRule .* index.php/$0 [PT] |
на
1 | RewriteRule ^(.*)$ index.php?$0 [L] |
Действительно всё работало нормально. С той разницей, что теперь всё URI стало попадать в index.php в качестве параметра GET. Это однозначно поломало всю пагинацию, ибо она отродясь юзала GET.
Единственно рабочим решением которое позволило мне полностью забыть проблему – оказалось заменой той строки на
1 | RewriteRule .* index.php [L] |
Вот так вот. Просто и сердито. И работает.
Почему работает – меня не спрашивайте, для меня это магия.
Может кто-нибудь знающий даст комментарий?
Посты по теме:
RSS-подписка
В кодигнайтере тоже эта проблема встречается. Приходится колдовать с .htaccess и конфигом наподобии
$config['uri_protocol'] = “REQUEST_URI”; // для fastCGI
> Почему работает – меня не спрашивайте, для меня это магия.
> Может кто-нибудь знающий даст комментарий?
потому же, почему и с index.php/$0 работало — сервер запускает index.php, а index.php парсит $_SERVER['REQUEST_URI']
> RewriteRule ^(.*)$ index.php?$0 [L]
не знаю как в отношении Kohana, но в общем случае — глупость неимоверная
Эта глупость встречается в рекомендациях. Правда большинство из них либо относятся к Kohana 2, либо непонятно к чему относятся. Возможно народ просто цитирует
Спасибо заработало!
Та же ошибка выходила у меня при работе с сервером на debian.
Странно как то все.
Видимо все из-за fastcgi. Возникла такая же ошибка – пофиксил по рецепту автора. Спасибо!