404, 'msg' => '文件不存在' ]); } // 获取文件MIME类型 $mimeType = mime_content_type($filePath); if (!$mimeType) { // 根据文件扩展名判断MIME类型 $ext = strtolower(pathinfo($filePath, PATHINFO_EXTENSION)); $mimeTypes = [ 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'png' => 'image/png', 'gif' => 'image/gif', 'webp' => 'image/webp', 'mp4' => 'video/mp4', 'mp3' => 'audio/mpeg', 'pdf' => 'application/pdf', ]; $mimeType = $mimeTypes[$ext] ?? 'application/octet-stream'; } // 读取文件内容 $content = file_get_contents($filePath); // 返回文件响应 return Response::create($content, 'file', 200) ->header([ 'Content-Type' => $mimeType, 'Content-Length' => filesize($filePath), 'Cache-Control' => 'public, max-age=31536000', ]); } }