feat(webman): 初始化webman框架基础配置与核心代码
- 添加基础配置文件,包括app、autoload、bootstrap、container、database、dependence、exception、log、middleware - 新增完整Dockerfile和docker-compose.yml,支持容器化运行 - 增加webman控制台插件配置及依赖管理文件composer.json - 创建app目录下核心控制器IndexController及进程Http和Monitor - 实现日志工具类Logger,支持多级别及异常格式化 - 配置.gitignore优化忽略无关文件和目录 - 初始化.idea项目配置文件,支持开发环境集成 - 完善启动流程,支持自动加载配置、路由及中间件 - 增加文件变更监控和内存监控机制,提升开发体验 - 设定默认时区为Asia/Shanghai,开启调试模式 - 配置日志输出格式,支持多种日志处理器与颜色高亮 - 提供公共函数文件框架,便于扩展自定义功能
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
/**
|
||||
* This file is part of webman.
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* For full copyright and license information, please see the MIT-LICENSE.txt
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @author walkor<walkor@workerman.net>
|
||||
* @copyright walkor<walkor@workerman.net>
|
||||
* @link http://www.workerman.net/
|
||||
* @license http://www.opensource.org/licenses/mit-license.php MIT License
|
||||
*/
|
||||
|
||||
namespace app\middleware;
|
||||
|
||||
use Webman\MiddlewareInterface;
|
||||
use Webman\Http\Response;
|
||||
use Webman\Http\Request;
|
||||
|
||||
/**
|
||||
* Class StaticFile
|
||||
* @package app\middleware
|
||||
*/
|
||||
class StaticFile implements MiddlewareInterface
|
||||
{
|
||||
public function process(Request $request, callable $handler): Response
|
||||
{
|
||||
// Access to files beginning with. Is prohibited
|
||||
if (strpos($request->path(), '/.') !== false) {
|
||||
return response('<h1>403 forbidden</h1>', 403);
|
||||
}
|
||||
/** @var Response $response */
|
||||
$response = $handler($request);
|
||||
// Add cross domain HTTP header
|
||||
/*$response->withHeaders([
|
||||
'Access-Control-Allow-Origin' => '*',
|
||||
'Access-Control-Allow-Credentials' => 'true',
|
||||
]);*/
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user