Я недавно перенес свое приложение с локального окна Windows на хост linux.Проблемы с контроллером развертывания Kohana 3
Мои проблемы в том, что я не могу получить доступ к контроллеру, я всегда получаю сообщение:. Файл не найден (от веб-сервера)
И это странно, потому что тот же базовый код работает на моем локальный.
bootstrap.php:
Route::set('default', '(<controller>(/<action>(/<id>)(/<param1>)(/<param2>)))')
->defaults(array(
'controller' => 'user',
'action' => 'index',
'param1' =>'',
'param2' =>'',
));
.htaccess:
# Turn on URL rewriting
RewriteEngine On
# Installation directory
RewriteBase/
# 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]
Самое странное, что происходит здесь в том, что если я пойду: www.myapp.com/ то контроллер по умолчанию выполняет и он находит функцию пользователя/индекса.
Но если я вручную напишу его как www.myapp.com/user/index, я продолжаю получать сообщение «Файл не найден».
Я попытался переименовать файлы контроллера в нижнем регистре, поэтому, я думаю, это не проблема, кроме того, если это будет проблемой, маршрут по умолчанию не найдет его в первую очередь, не так ли?
Если, например, я пишу в маршрут по умолчанию:
Route::set('default', '(<controller>(/<action>(/<id>)(/<param1>)(/<param2>)))')
->defaults(array(
'controller' => 'user',
'action' => 'login',
'param1' =>'',
'param2' =>'',
));
И я Accesss www.myapp.com, было бы загрузить пользовательскую функцию. Я не могу понять, что здесь не так, почему, когда я пишу файл myapp.com/user/login, он говорит, что файл не найден, но если я положу его по умолчанию, он откроет его.