我还在和Kohana一起玩,并为我找到另一个塞子: - )
我创建了一个名为compte.php的新简单控制器,位于/app/classes/controller/compte.php
内<?php defined('SYSPATH') or die('No direct script access.');
class Controller_Compte extends Controller {
public function action_index()
{
$this->response->body('hello, world comptes!');
}
} // End Comptes
为什么我不能用这个网址转到这个控制器?
http://127.0.0.1/~user/kohana/compte/
此网址有效:
http://127.0.0.1/~user/kohana/
我已经在bootstrap.php文件中编辑了路由但没有成功,确定我遗漏了一些东西......
如果我使用默认路由指向我的控制器comptes,我可以看到它没问题,但我想知道如何直接转到这个控制器。
Route::set('compte', '()') ->defaults(array( 'controller' => 'compte', 'action' => 'index', ));
谢谢!
我从Web服务器收到错误404 Not Found错误,而不是来自Kohana
# Turn on URL rewriting
RewriteEngine On
# Installation directory
RewriteBase /~user/kohana/
# 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]
此外,该文件与examples.htaccess位于同一级别,但在kohana文件夹中重命名为.htaccess
我第三次关注教程链接,最初的问题是Apache,现在404来自Kohana:
HTTP_Exception_404 [ 404 ]: Unable to find a route to match the URI: compte
这是我在bootstrap.php中唯一的路线
Route::set('compte', '') ->defaults(array( 'controller' => 'compte', 'action' => 'index', ));
如果我输入没有任何控制器的URL,我可以看到默认的compte Controller,但是如果我使用compte或comptes或者其他什么,总是找不到404 ...
答案 0 :(得分:1)
关于编辑3:
您的路由仅匹配空URI字符串。 'compte'或'comptes'不是空字符串。 如果您希望路由匹配空URI以及URI'compte'和'comptes',请使用以下命令:
Route::set('compte', '(compte(s))')
->defaults(array(
'controller' => 'compte',
'action' => 'index',
));
整个事情是可选的,因此它可以匹配空URI。一旦'compte'存在,'s'也是可选的。一旦你了解路由就非常强大,你可以here。
答案 1 :(得分:0)
尝试
Route::set('compte', '') ->defaults(array( 'controller' => 'compte', 'action' => 'index', ));
请注意,网址部分为空。
答案 2 :(得分:0)
也许Apache没有配置为读取.htaccess文件。阅读&#34; 404错误&#34;部分:https://github.com/kohana/core/blob/962c5f12714cb3ab146a41db61a888c2b0cc79da/guide/kohana/tutorials/clean-urls.md