只是无法让控制器工作

时间:2010-06-07 19:50:09

标签: kohana

我尝试进入mysite / user,以便application / classes / controller / user.php应该正常工作,现在这是我的文件树:

alt text http://img704.imageshack.us/img704/5338/bugiz.png

controller / user.php的代码:

<?php defined('SYSPATH') OR die('No direct access allowed.');


class Controller_User extends Controller_Default
{
    public $template = 'user';
 function action_index()
    {
  //$view = View::factory('user');
  //$view->render(TRUE);
  $this->template->message = 'hello, world!';
    }
}

?>

controller / default.php的代码:

<?php defined('SYSPATH') OR die('No direct access allowed.');
class Controller_default extends Controller_Template
{
}

bootstrap.php中:

<?php defined('SYSPATH') or die('No direct script access.');

//-- Environment setup --------------------------------------------------------

/**
 * Set the default time zone.
 *
 * @see  http://kohanaframework.org/guide/using.configuration
 * @see  http://php.net/timezones
 */
date_default_timezone_set('America/Chicago');

/**
 * Set the default locale.
 *
 * @see  http://kohanaframework.org/guide/using.configuration
 * @see  http://php.net/setlocale
 */
setlocale(LC_ALL, 'en_US.utf-8');

/**
 * Enable the Kohana auto-loader.
 *
 * @see  http://kohanaframework.org/guide/using.autoloading
 * @see  http://php.net/spl_autoload_register
 */
spl_autoload_register(array('Kohana', 'auto_load'));

/**
 * Enable the Kohana auto-loader for unserialization.
 *
 * @see  http://php.net/spl_autoload_call
 * @see  http://php.net/manual/var.configuration.php#unserialize-callback-func
 */
ini_set('unserialize_callback_func', 'spl_autoload_call');

//-- Configuration and initialization -----------------------------------------

/**
 * Initialize Kohana, setting the default options.
 *
 * The following options are available:
 *
 * - string   base_url    path, and optionally domain, of your application   NULL
 * - string   index_file  name of your index file, usually "index.php"       index.php
 * - string   charset     internal character set used for input and output   utf-8
 * - string   cache_dir   set the internal cache directory                   APPPATH/cache
 * - boolean  errors      enable or disable error handling                   TRUE
 * - boolean  profile     enable or disable internal profiling               TRUE
 * - boolean  caching     enable or disable internal caching                 FALSE
 */
Kohana::init(array(
 'base_url'   => '/mysite/',
 'index_file' => FALSE,
));

/**
 * Attach the file write to logging. Multiple writers are supported.
 */
Kohana::$log->attach(new Kohana_Log_File(APPPATH.'logs'));

/**
 * Attach a file reader to config. Multiple readers are supported.
 */
Kohana::$config->attach(new Kohana_Config_File);

/**
 * Enable modules. Modules are referenced by a relative or absolute path.
 */
Kohana::modules(array(
  'auth'       => MODPATH.'auth',       // Basic authentication
  'cache'      => MODPATH.'cache',      // Caching with multiple backends
  'codebench'  => MODPATH.'codebench',  // Benchmarking tool
  'database'   => MODPATH.'database',   // Database access
  'image'      => MODPATH.'image',      // Image manipulation
  'orm'        => MODPATH.'orm',        // Object Relationship Mapping
  'pagination' => MODPATH.'pagination', // Paging of results
  'userguide'  => MODPATH.'userguide',  // User guide and API documentation
 ));

/**
 * Set the routes. Each route must have a minimum of a name, a URI and a set of
 * defaults for the URI.
 */
Route::set('default', '(<controller>(/<action>(/<id>)))')
 ->defaults(array(
  'controller' => 'welcome',
  'action'     => 'index',
 ));

/**
 * Execute the main request. A source of the URI can be passed, eg: $_SERVER['PATH_INFO'].
 * If no source is specified, the URI will be automatically detected.
 */
echo Request::instance()
 ->execute()
 ->send_headers()
 ->response;



?>

htaccess的:

RewriteEngine On

RewriteBase /mysite/

RewriteRule ^(application|modules|system) - [F,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule .* index.php/$0 [PT,L]

尝试转到http://localhost/,从welcome.php发出“hello world”页面 试着去http://localhost/mysite/user给我这个:

在此服务器上找不到请求的URL / mysite / user。

已解决

Apache无法访问目录,权限更改和presto。

1 个答案:

答案 0 :(得分:0)

将RewriteBase设置为 / 而不是 / mysite / 并尝试访问localhost / user