Kohana kohana No input file specified.

romanag

Новичок
После переноса файлов проекта с windows denwer на unix хостинг страницы сайта (кроме главной) начали выдавать странные ошибки. В основном это "No input file specified."

В интернете все пишут, да и я догадываюсь, что проблема в файле .htaccess.

Как только не пробовал изменить его в соответствии с найденной информацией - в результате неудача.

Пробовал изменить строку
RewriteRule .* index.php/$0 [PT]
На
RewriteRule .* index.php?kohana_uri=$0 [PT,L,QSA]
или на
RewriteRule .* index.php [L]
или на
RewriteRule .* index.php?kohana_uri=$0 [PT,L,QSA]
или на
RewriteRule^(.*)$ index.php?/$1 [L]
или так как указано в этой статье
http://sagip.ru/pages/kohana/kohana_no_input_file_specified

В результате при переходе на различные внутренние страницы получаю разные ошибки (хотя на локальном хостинге все работало нормально)

Установил права на все файлы и папки 777
Версия коханы 3.3.3
Версия php 5.3 (на обеих серверах)

Мой .htaccess:
# Turn on URL rewriting
RewriteEngine On

# Installation directory
RewriteBase /

# Protect hidden files from being viewed
<Files .*>
Order Deny,Allow
Deny From All
</Files>

# Protect application and system files from being viewed
RewriteRule ^(?:application|modules|system)\b.* index.php/$0 [L]

# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT]

RewriteCond %{HTTP_HOST} ^www\.site-content-protection.com$ [NC]
RewriteRule ^(.*)$ http://site-content-protection.com/$1 [R=301,L]

Помогите пожалуйста решить проблему...
 

Здыхлик

Kohaner
Команда форума
> В результате при переходе на различные внутренние страницы получаю разные ошибки (хотя на локальном хостинге все работало нормально)

Есть подозрение, что это признак правильного пути. Просто вместо ошибок настройки веб-сервера получаете ошибки кода (типичная проблема - чувствительность к регистру, почему-то продолжающая быть сюрпризом для разработчиков в 21м веке). Но, так как сами ошибки оставлены на откуп экстрасенсам, конкретики не получите ))
 

romanag

Новичок
> В результате при переходе на различные внутренние страницы получаю разные ошибки (хотя на локальном хостинге все работало нормально)

Есть подозрение, что это признак правильного пути. Просто вместо ошибок настройки веб-сервера получаете ошибки кода (типичная проблема - чувствительность к регистру, почему-то продолжающая быть сюрпризом для разработчиков в 21м веке). Но, так как сами ошибки оставлены на откуп экстрасенсам, конкретики не получите ))
Ну например меняю в .htaccess строку с
RewriteRule .* index.php/$0 [PT]
на
RewriteRule .* index.php [L]

Получаю следующие ошибки:

При переходе на любую статью:
View_Exception [ 0 ]: The requested view ru/faq/article/ways_to_copy_content could not be found

При переходе на форму регистрации:
Class 'Captcha' not found

Сейчас еще ошибки поищу
 

romanag

Новичок
Вот роут на статьи

Route::set('faq', '<lang>/faq(/<id>)', array('id' => '.+'))
->defaults(array(
'controller' => 'faq',
'action' => 'index',
));

Сама страница index загружается без ошибок, а от с id проблемы. Подозреваю что неправильно написал эту часть
, array('id' => '.+')
 

romanag

Новичок
Весь остальной функционал (и роуты в том числе) работают. Можете написать как правильно настроить пути на сервере о которых Вы говорили. А с капчей не понятно что делать. Может потому, что у меня все контроллеры начинаются с большой буквы, а в модуле смотрю написано все с маленькой...не пойму до конца... Спасибо за ответ
 

romanag

Новичок
Спасибо всем. Все проблемы были из-за того, что некоторые(или все) хостинги чувствительны к регистру. В местах, где например вызывается класс text (с маленькой буквы), который объявлен как Text будет ошибка(чего не происходит в windows). Мне не сложно было поменять все названия, хотя скорей всего есть какая-то настройка на сервере, которая отвечает за чувствительность к регистру
 

fixxxer

К.О.
Партнер клуба
Нет такой настройки.
Разрабатывать (или, по крайней мере, тестировать) надо на системе, чувствительной к регистру.
На OS X это можно задать опцией форматирования ФС.
В Windows NTFS по факту различает регистр, нечувствительность реализована на уровне windows API. Как сделать, чтобы была чувствительна, не знаю. Но на Windows вообще разрабатывать не стоит (в смысле, не IDE, а код запускать), слишком много отличий от Unix. Лучше запускать линукс в виртуальной машине, удобно для этого использовать vagrant.
 

Здыхлик

Kohaner
Команда форума
Еще очень рекомендую начать обращать внимание на ошибки, отдаваемые проектом. Очень пригодится в дальнейшем.
 
Сверху