2011-07-19 05:57:37 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
/**
|
|
|
|
* The directory in which your application specific resources are located.
|
|
|
|
* The application directory must contain the bootstrap.php file.
|
|
|
|
*
|
2013-10-17 04:15:13 +00:00
|
|
|
* @link http://kohanaframework.org/guide/about.install#application
|
2011-07-19 05:57:37 +00:00
|
|
|
*/
|
|
|
|
$application = 'application';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* The directory in which your modules are located.
|
|
|
|
*
|
2013-10-17 04:15:13 +00:00
|
|
|
* @link http://kohanaframework.org/guide/about.install#modules
|
2011-07-19 05:57:37 +00:00
|
|
|
*/
|
|
|
|
$modules = 'modules';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* The directory in which upstream Kohana resources (modules) are located.
|
|
|
|
*/
|
|
|
|
$sysmodules = 'includes/kohana/modules';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* The directory in which the Kohana resources are located. The system
|
|
|
|
* directory must contain the classes/kohana.php file.
|
|
|
|
*
|
2013-10-17 04:15:13 +00:00
|
|
|
* @link http://kohanaframework.org/guide/about.install#system
|
2011-07-19 05:57:37 +00:00
|
|
|
*/
|
|
|
|
$system = 'includes/kohana/system';
|
|
|
|
|
|
|
|
/**
|
|
|
|
* The default extension of resource files. If you change this, all resources
|
|
|
|
* must be renamed to use the new extension.
|
|
|
|
*
|
2013-10-17 04:15:13 +00:00
|
|
|
* @link http://kohanaframework.org/guide/about.install#ext
|
2011-07-19 05:57:37 +00:00
|
|
|
*/
|
|
|
|
define('EXT', '.php');
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Set the PHP error reporting level. If you set this in php.ini, you remove this.
|
2013-10-17 04:15:13 +00:00
|
|
|
* @link http://www.php.net/manual/errorfunc.configuration#ini.error-reporting
|
2011-07-19 05:57:37 +00:00
|
|
|
*
|
|
|
|
* When developing your application, it is highly recommended to enable notices
|
|
|
|
* and strict warnings. Enable them by using: E_ALL | E_STRICT
|
|
|
|
*
|
|
|
|
* In a production environment, it is safe to ignore notices and strict warnings.
|
|
|
|
* Disable them by using: E_ALL ^ E_NOTICE
|
|
|
|
*
|
|
|
|
* When using a legacy application with PHP >= 5.3, it is recommended to disable
|
|
|
|
* deprecated notices. Disable with: E_ALL & ~E_DEPRECATED
|
|
|
|
*/
|
|
|
|
error_reporting(E_ALL | E_STRICT);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* End of standard configuration! Changing any of the code below should only be
|
|
|
|
* attempted by those with a working knowledge of Kohana internals.
|
|
|
|
*
|
2013-10-17 04:15:13 +00:00
|
|
|
* @link http://kohanaframework.org/guide/using.configuration
|
2011-07-19 05:57:37 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
// Set the full path to the docroot
|
|
|
|
define('DOCROOT', realpath(dirname(__FILE__)).DIRECTORY_SEPARATOR);
|
|
|
|
|
|
|
|
// Make the application relative to the docroot, for symlink'd index.php
|
|
|
|
if ( ! is_dir($application) AND is_dir(DOCROOT.$application))
|
|
|
|
$application = DOCROOT.$application;
|
|
|
|
|
|
|
|
// Make the modules relative to the docroot, for symlink'd index.php
|
|
|
|
if ( ! is_dir($modules) AND is_dir(DOCROOT.$modules))
|
|
|
|
$modules = DOCROOT.$modules;
|
|
|
|
|
|
|
|
// Make the system relative to the docroot, for symlink'd index.php
|
|
|
|
if ( ! is_dir($sysmodules) AND is_dir(DOCROOT.$sysmodules))
|
|
|
|
$sysmodules = DOCROOT.$sysmodules;
|
|
|
|
|
|
|
|
// Make the system relative to the docroot, for symlink'd index.php
|
|
|
|
if ( ! is_dir($system) AND is_dir(DOCROOT.$system))
|
|
|
|
$system = DOCROOT.$system;
|
|
|
|
|
|
|
|
// Define the absolute paths for configured directories
|
|
|
|
define('APPPATH', realpath($application).DIRECTORY_SEPARATOR);
|
|
|
|
define('MODPATH', realpath($modules).DIRECTORY_SEPARATOR);
|
|
|
|
define('SMDPATH', realpath($sysmodules).DIRECTORY_SEPARATOR);
|
|
|
|
define('SYSPATH', realpath($system).DIRECTORY_SEPARATOR);
|
|
|
|
|
|
|
|
// Clean up the configuration vars
|
|
|
|
unset($application, $modules, $sysmodules, $system);
|
|
|
|
|
|
|
|
if (file_exists('install'.EXT))
|
|
|
|
{
|
|
|
|
// Load the installation check
|
|
|
|
return include 'install'.EXT;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Define the start time of the application, used for profiling.
|
|
|
|
*/
|
|
|
|
if ( ! defined('KOHANA_START_TIME'))
|
|
|
|
{
|
|
|
|
define('KOHANA_START_TIME', microtime(TRUE));
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Define the memory usage at the start of the application, used for profiling.
|
|
|
|
*/
|
|
|
|
if ( ! defined('KOHANA_START_MEMORY'))
|
|
|
|
{
|
|
|
|
define('KOHANA_START_MEMORY', memory_get_usage());
|
|
|
|
}
|
|
|
|
|
|
|
|
// Bootstrap the application
|
|
|
|
require APPPATH.'bootstrap'.EXT;
|
|
|
|
|
2013-10-17 04:15:13 +00:00
|
|
|
if (PHP_SAPI == 'cli') // Try and load minion
|
|
|
|
{
|
|
|
|
class_exists('Minion_Task') OR die('Please enable the Minion module for CLI support.');
|
|
|
|
set_exception_handler(array('Minion_Exception', 'handler'));
|
|
|
|
|
|
|
|
Minion_Task::factory(Minion_CLI::options())->execute();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* 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::factory(TRUE, array(), FALSE)
|
|
|
|
->execute()
|
|
|
|
->send_headers(TRUE)
|
|
|
|
->body();
|
|
|
|
}
|