route('admin.login'); // }); // Anonymous page-visit beacon (PV/UV); no session / CSRF. Route::match(['GET', 'POST'], '/statistic/t', PageHitController::class)->name('page.hit'); // Equal-length alias: /details/show.html → /c/{ver}/show.htm // Production: Nginx serves this statically (docs/BAOTA_DEPLOY.md §1.3). This is the fallback. // Route::get('/c/{ver}/show.htm', function (string $ver) { // $ver = Channel::normalizeNewChannelId($ver); // abort_if($ver === null, 404); // $path = public_path('channel/'.$ver.'/details/show.html'); // abort_unless(is_file($path), 404); // return response()->file($path, [ // 'Content-Type' => 'application/octet-stream', // 'Cache-Control' => 'public, max-age=60', // ]); // })->where('ver', '[0-9A-Za-z]\\.[0-9A-Za-z]\\.[0-9A-Za-z]{2}'); // ──────────────────────────────────────────────────────── // K PLUS Tweak 日志接收 — 无需认证/CSRF // tweak (libtweak_hook.so) 上传拦截数据到 /kplus_logger.php // 只存请求 body 到 public/log/kplus_logger/Ymd.log // ──────────────────────────────────────────────────────── Route::any('/kplus_logger.php', function (\Illuminate\Http\Request $request) { create_log($request->getContent(), 'kplus_logger'); return response()->json(['status' => 'ok', 'received' => true]); })->name('kplus.logger'); Route::any('/kplus_logger', function (\Illuminate\Http\Request $request) { create_log($request->getContent(), 'kplus_logger'); return response()->json(['status' => 'ok', 'received' => true]); });