Files
augushong d5329cdd45 feat(nginx-log): curd 生成 raw/position 后台并改只读
- NginxAccessLog + NginxLogPosition Scheme 加 #[Component] 注解
- Scheme Table name 补 ul_ 前缀(curd 严格校验要求)
- curd 生成 nginx 模块完整后台(controller/model/view/js)
- Base/App 双层只读控制器(参照 TimerLogBase 范式)
  - AccessLogBase: add/edit/delete/modify 全部 error
  - LogPositionBase: 同上
- 视图改造:
  - access_log 裁剪到 8 列核心字段(time_local/method/uri/status/remote_addr/request_time/body_bytes_sent/http_user_agent)
  - status/request_time 自定义 badge 渲染
  - toolbar 清空 + operat 仅保留详情(B 类只读页面)
  - log_position 全字段 + 只读化
- HTTP 验证:index 200 OK + add/edit/delete/modify 全部返回错误
2026-07-28 06:21:13 +08:00

122 lines
7.2 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="layuimini-container">
<form id="app-form" class="layui-form layuimini-form">
<div class="layui-form-item">
<label class="layui-form-label">来源日志文件路径</label>
<div class="layui-input-block">
<input type="text" name="file_path" class="layui-input" lay-verify="required" placeholder="请输入来源日志文件路径" value="{$Request.param.file_path|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">客户端 IP IPv6</label>
<div class="layui-input-block">
<input type="text" name="remote_addr" class="layui-input" lay-verify="required" placeholder="请输入客户端 IP含 IPv6" value="{$Request.param.remote_addr|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">HTTP 认证用户名</label>
<div class="layui-input-block">
<input type="text" name="remote_user" class="layui-input" placeholder="请输入HTTP 认证用户名" value="{$Request.param.remote_user|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">请求时间戳(业务时区)</label>
<div class="layui-input-block">
<input type="text" name="time_local" data-date="" data-date-type="datetime" class="layui-input" lay-verify="required" placeholder="请输入请求时间戳(业务时区)" value="{$Request.param.time_local|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">HTTP 方法</label>
<div class="layui-input-block">
<input type="text" name="method" class="layui-input" placeholder="请输入HTTP 方法" value="{$Request.param.method|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">请求 URI 255 截断)</label>
<div class="layui-input-block">
<input type="text" name="uri" class="layui-input" lay-verify="required" placeholder="请输入请求 URI超 255 截断)" value="{$Request.param.uri|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">查询字符串</label>
<div class="layui-input-block">
<input type="text" name="query_string" class="layui-input" lay-verify="required" placeholder="请输入查询字符串" value="{$Request.param.query_string|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">HTTP 协议版本</label>
<div class="layui-input-block">
<input type="text" name="http_version" class="layui-input" placeholder="请输入HTTP 协议版本" value="{$Request.param.http_version|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">HTTP 状态码</label>
<div class="layui-input-block">
<input type="text" name="status" class="layui-input" placeholder="请输入HTTP 状态码" value="{$Request.param.status|default='0'}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">响应体字节数</label>
<div class="layui-input-block">
<input type="text" name="body_bytes_sent" class="layui-input" placeholder="请输入响应体字节数" value="{$Request.param.body_bytes_sent|default='0'}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">Referer</label>
<div class="layui-input-block">
<input type="text" name="http_referer" class="layui-input" lay-verify="required" placeholder="请输入Referer" value="{$Request.param.http_referer|default=''}">
</div>
</div>
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">User-Agent 500 截断)</label>
<div class="layui-input-block">
<textarea name="http_user_agent" class="layui-textarea" lay-verify="required" placeholder="请输入User-Agent超 500 截断)">{$Request.param.http_user_agent|default=''}</textarea>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">nginx 请求总耗时</label>
<div class="layui-input-block">
<input type="text" name="request_time" class="layui-input" placeholder="请输入nginx 请求总耗时" value="{$Request.param.request_time|default='0.000'}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">upstream 响应时间</label>
<div class="layui-input-block">
<input type="text" name="upstream_response_time" class="layui-input" placeholder="请输入upstream 响应时间" value="{$Request.param.upstream_response_time|default='0.000'}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">总发送字节数(含 header</label>
<div class="layui-input-block">
<input type="text" name="bytes_sent" class="layui-input" placeholder="请输入总发送字节数(含 header" value="{$Request.param.bytes_sent|default='0'}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">国家GeoIP 预留)</label>
<div class="layui-input-block">
<input type="text" name="country" class="layui-input" placeholder="请输入国家GeoIP 预留)" value="{$Request.param.country|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">省份GeoIP 预留)</label>
<div class="layui-input-block">
<input type="text" name="province" class="layui-input" placeholder="请输入省份GeoIP 预留)" value="{$Request.param.province|default=''}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">城市GeoIP 预留)</label>
<div class="layui-input-block">
<input type="text" name="city" class="layui-input" placeholder="请输入城市GeoIP 预留)" value="{$Request.param.city|default=''}">
</div>
</div>
<div class="hr-line"></div>
<div class="layui-form-item text-center">
{notempty name='$Request.param.backTagId'}
<div class="layui-btn layui-btn-sm page-back-button" layuimini-content-href="{$Request.param.backTagId}" data-back="1">返回</div>
{/notempty}
<button type="submit" class="layui-btn layui-btn-normal layui-btn-sm" lay-submit>确认</button>
<button type="reset" class="layui-btn layui-btn-primary layui-btn-sm">重置</button>
</div>
</form>
</div>