Kohana 3.3 Не работает из подкаталога

Ответ:

Kohana 3.3, они не принимали во внимание чувствительность к регистру для папок / файлов (они заглавными буквами некоторых каталогов / файлов), так что это будет сводить некоторых людей с ума, когда они начнут переключаться на новую Kohana (так же, как я сделал).

Я переключился обратно на Kohana 3.2, пока это не было исправлено.


Большое спасибо за то, что уделили мне время на чтение моего огромного поста об этой глупой проблеме, и я надеюсь, что этот ответ спасет бедным душам жизнь в будущем =)

3 ответа

Решение

Неправильно, что "они не учитывали чувствительность к регистру для папок / файлов". Изменение было осознанным решением, как описано в руководстве в разделе " Обновление с версии 3.2".

Kohana 3.3 добавляет частичную поддержку стандарта PSR-0 PHP Framework Interop Group. Разработчикам фреймворка PHP рекомендуется следовать этому стандарту, чтобы упростить взаимодействие между фреймворками.

Одним из требований PSR-0 является то, что имена классов и имена файлов совпадают. Ранее Kohana использовал имена классов Title Case, но имена файлов в нижнем регистре. Теперь дело обоих совпадений. Если вы посмотрите, то увидите, что все файлы классов Kohana прописаны в верхнем регистре.

Это не будет "исправлено" в будущем выпуске, потому что имена файлов в нижнем регистре были "сломаны" и теперь они исправлены.

В общем, Kohana иногда вносит критические изменения между версиями, но вы всегда сможете найти их в руководстве.

Если я не ошибаюсь, вы можете работать из подкаталога. Просто укажите это в файле application/bootstrap.php:

Kohana::init(array(
    'base_url' => '/subfolder',
));

Если вы попробуете с URL /beta/index.php работает? для Dreamhost я использую другое правило переписать

#Local
#RewriteRule ^(.*)$ $1.php/$0
#Dreamhost
RewriteRule ^(.*)$ $1.php?/$0 [PT]
Другие вопросы по тегам