2016-12-17 15:07:40 +01:00
|
|
|
<?php
|
2018-10-12 11:13:59 +02:00
|
|
|
|
2016-12-17 15:07:40 +01:00
|
|
|
/**
|
2019-02-04 21:34:46 +01:00
|
|
|
* @package Grav\Core
|
2016-12-17 15:07:40 +01:00
|
|
|
*
|
2019-02-04 21:34:46 +01:00
|
|
|
* @copyright Copyright (C) 2015 - 2019 Trilby Media, LLC. All rights reserved.
|
2016-12-17 15:07:40 +01:00
|
|
|
* @license MIT License; see LICENSE file for details.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
if (PHP_SAPI !== 'cli-server') {
|
2018-10-12 11:13:59 +02:00
|
|
|
die('This script cannot be run from browser. Run it from a CLI.');
|
2016-12-17 15:07:40 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$_SERVER['PHP_CLI_ROUTER'] = true;
|
|
|
|
|
|
|
|
|
|
if (is_file($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . $_SERVER['SCRIPT_NAME'])) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
2019-08-12 23:11:41 +02:00
|
|
|
$gravBasedir = getenv('GRAV_BASEDIR');
|
|
|
|
|
if ($gravBasedir === false) {
|
|
|
|
|
$gravBasedir = '';
|
|
|
|
|
} else {
|
|
|
|
|
$gravBasedir = DIRECTORY_SEPARATOR . trim($gravBasedir, DIRECTORY_SEPARATOR);
|
|
|
|
|
// tell system/defines.php not to use the default GRAV_ROOT
|
|
|
|
|
define('GRAV_ROOT', str_replace(DIRECTORY_SEPARATOR, '/', getcwd()). $gravBasedir);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
2016-12-17 15:07:40 +01:00
|
|
|
$_SERVER = array_merge($_SERVER, $_ENV);
|
2019-08-12 23:11:41 +02:00
|
|
|
$_SERVER['SCRIPT_FILENAME'] = $_SERVER['DOCUMENT_ROOT'] . $gravBasedir .DIRECTORY_SEPARATOR . 'index.php';
|
|
|
|
|
$_SERVER['SCRIPT_NAME'] = $gravBasedir . DIRECTORY_SEPARATOR . 'index.php';
|
|
|
|
|
$_SERVER['PHP_SELF'] = $gravBasedir . DIRECTORY_SEPARATOR . 'index.php';
|
2016-12-17 15:07:40 +01:00
|
|
|
|
|
|
|
|
error_log(sprintf('%s:%d [%d]: %s', $_SERVER['REMOTE_ADDR'], $_SERVER['REMOTE_PORT'], http_response_code(), $_SERVER['REQUEST_URI']), 4);
|
2018-10-12 11:13:59 +02:00
|
|
|
|
2019-08-12 23:11:41 +02:00
|
|
|
if ($gravBasedir === '') {
|
|
|
|
|
require 'index.php';
|
|
|
|
|
} else {
|
|
|
|
|
require ltrim($gravBasedir, '/') . DIRECTORY_SEPARATOR . 'index.php';
|
|
|
|
|
}
|