This repository has been archived on 2024-09-05. You can view files and clone it, but cannot push or open issues or pull requests.
shimmie2/tests/router.php
2020-03-18 20:27:52 +00:00

29 lines
971 B
PHP

<?php
// custom routing for stand-alone mode
if (PHP_SAPI !== 'cli-server') {
die('cli only');
}
// warehouse files
@include_once "data/config/shimmie.conf.php";
require_once "core/sys_config.php";
require_once "core/polyfills.php";
require_once "core/util.php";
$matches = [];
if (preg_match('/\/_(images|thumbs)\/([0-9a-f]{32}).*$/', $_SERVER["REQUEST_URI"], $matches)) {
header('Content-Type: image/jpeg');
print(file_get_contents(warehouse_path($matches[1], $matches[2])));
return true;
}
unset($matches);
// use the default handler (serve static files, interpret php files)
if (preg_match('/\.(?:png|jpg|jpeg|gif|css|js|php)(\?.*)?$/', $_SERVER["REQUEST_URI"])) {
return false;
}
// all other requests (use shimmie routing based on URL)
$_SERVER["PHP_SELF"] = '/index.php';
$_GET['q'] = explode("?", $_SERVER["REQUEST_URI"])[0];
error_log($_GET['q']); // if we use a custom handler, we need to do our own access log
require_once "index.php";