bc518174
王天杨
提交两个项目文件
|
1
2
|
<?php
// +----------------------------------------------------------------------
|
3a3dc915
王天杨
feat: 稻城亚丁项目批量更新
|
3
|
// | PHP 内置服务器路由(php think run / php -S ... public/router.php)
|
bc518174
王天杨
提交两个项目文件
|
4
|
// +----------------------------------------------------------------------
|
3a3dc915
王天杨
feat: 稻城亚丁项目批量更新
|
5
6
|
// 旧版 is_file(DOCUMENT_ROOT . SCRIPT_NAME) 在部分 PHP 版本下会误判,导致 400。
// 按 REQUEST_URI 判断 public 下是否存在同名静态文件;否则进入 ThinkPHP。
|
bc518174
王天杨
提交两个项目文件
|
7
|
// +----------------------------------------------------------------------
|
bc518174
王天杨
提交两个项目文件
|
8
|
|
3a3dc915
王天杨
feat: 稻城亚丁项目批量更新
|
9
|
declare(strict_types=1);
|
bc518174
王天杨
提交两个项目文件
|
10
|
|
3a3dc915
王天杨
feat: 稻城亚丁项目批量更新
|
11
12
13
14
15
16
17
|
$uri = urldecode(parse_url($_SERVER['REQUEST_URI'] ?? '/', PHP_URL_PATH) ?? '/');
if ($uri !== '/' && $uri !== '' && str_contains($uri, '..')) {
http_response_code(403);
header('Content-Type: text/plain; charset=utf-8');
echo 'Forbidden';
return true;
|
bc518174
王天杨
提交两个项目文件
|
18
|
}
|
3a3dc915
王天杨
feat: 稻城亚丁项目批量更新
|
19
20
21
22
23
24
25
26
27
28
29
|
if ($uri !== '/' && $uri !== '') {
$path = __DIR__ . str_replace('/', DIRECTORY_SEPARATOR, $uri);
if (is_file($path)) {
return false;
}
}
$_SERVER['SCRIPT_FILENAME'] = __DIR__ . DIRECTORY_SEPARATOR . 'index.php';
require __DIR__ . DIRECTORY_SEPARATOR . 'index.php';
|