如何隐藏前端项目编译后的.map文件

需求来源:
1、不想让用户在客户端看到源码。
2、应对安全扫描,给客户交付的项目.map被扫描出风险,确保交付。

在Web开发中,通常会使用Source Map文件(.map文件)来将压缩后的JavaScript或CSS代码映射回原始的开发代码,以方便调试和代码审查。但有时候我们不希望将.map文件暴露给最终用户,可以通过一些方法在前端上进行过滤:

  1. 服务器端配置:可以在服务器端进行配置,阻止 .map 文件被请求到客户端。可以通过在服务器配置文件中添加规则,例如使用nginx或Apache服务器,设置禁止访问 .map 文件。
  2. 构建工具配置:在项目构建时,可以在构建工具(如Webpack、Gulp等)中设置,不生成 .map 文件或将 .map 文件输出到特定的目录,而不暴露在公开的静态文件目录中。
  3. CDN 配置:如果你使用 CDN 来托管静态资源文件,可以在 CDN 上设置规则,不允许 .map 文件被暴露出来。
  4. 压缩打包工具配置:如果使用工具将代码压缩和打包,比如 UglifyJS、Terser 等,可以在配置中禁用生成 .map 文件。
  5. 删除或移除 .map 文件:在部署到生产环境之前,可以手动删除或移除 .map 文件,从而避免 .map 文件被公开访问。

通过以上方法,可以有效地过滤前端 .map 文件,确保敏感信息的安全性,同时保持代码的调试和审查功能。
如果你使用微前端开发,应用较多,或者是陈年老项目,不想重新打包,建议使用nginx 过滤实现。
将下面代码放置server 监听下面。

location ~* .+(js.map)$ {deny all;
}

例如:

server {listen       7777;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location ~* .+(js.map)$ {deny all;}location ~ /(microapps|container|.project|project) {alias  html/gab/$uri;}location / {# if ( $request_uri ~* .+(js.map)$ ) {#      return 403;# }try_files $uri $uri/ index.html;root   html/gab/;index  index.html index.htm;}
}```

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/737891.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分布式架构下 网络通信的底层实现原理(三)

阻塞通信 Java中经常会使用Scoket套接字来实现网通信, 举个栗子: import java.io.*; import java.net.ServerSocket; import java.net.Socket;public class testSocket {public static void main(String[] args) throws IOException {final int DEFAU…

web自动化测试框架都是有哪些?

Web自动化测试框架主要有以下几种: 1.Selenium:轻量级的Web自动化测试框架,支持多种Web浏览器和语言的集成。Selenium提供了一个IDE来录制和运行自动化测试脚本,还提供了WebDriver,可以通过编程语言编写自动化测试脚本…

【鸿蒙 HarmonyOS 4.0】Web组件

一、介绍 页面加载是Web组件的基本功能。根据页面加载数据来源可以分为三种常用场景,包括加载网络页面、加载本地页面、加载HTML格式的富文本数据。 二、加载网页 2.1、加载在线网页 Web组件的使用非常简单,只需要在Page目录下的ArkTS文件中创建一个…

5款好用的AI办公软件,一键轻松制作PPT、视频,提升工作效率!

众所周知,AI 人工智能技术已渗透到生活的方方面面,无论是很多人早已用上的智能音箱、语音助手,还是新近诞生的各种 AI 软件工具,背后都离不开 AI 人工智能技术的加持。 对于各类新生的 AI 软件工具,人们很容易「选边站…

Go的安装

一. 下载地址 Go官方下载地址:https://golang.org/dl/ Go中文网:https://go.p2hp.com/go.dev/dl/ 根据不同系统下载不同的包。 二. 配置GOPATH GOPATH是一个环境变量,用来表明你写的go项目的存放路径。 GOPATH路径最好只设置一个&#xff0…

部署 Web 项目到Linux上

目录 环境配置 构建项目 ​编辑 数据准备 运行并查看日志 杀掉进程 把程序安装到生产环境上, 这个过程称为 "部署",也叫 "上线"。一旦程序部署成功, 那么这个程序就能被外网中千千万万的普通用户访问到。 环境配置 程序配置文件修改 实…

讲解Python 3的10种基本语法

在学习Python编程语言时,掌握基本语法是至关重要的。本文将通过10个范例详细讲解Python 3的基本语法,帮助读者更好地理解和掌握这门流行的编程语言。 1. 变量和数据类型 Python是一种动态类型语言,不需要事先声明变量的数据类型。例如&…

网络套接字1

网络套接字1 📟作者主页:慢热的陕西人 🌴专栏链接:Linux 📣欢迎各位大佬👍点赞🔥关注🚓收藏,🍉留言 本博客主要内容讲解了udp的Linux环境下的使用&#xff0c…

Rust 语言中符号 :: 的使用场景

在 Rust 语言中,:: 符号主要用于以下几个场合: 指定关联函数或关联类型: 关联函数(也称为静态方法)是与类型关联而非实例关联的函数。它们使用 :: 符号来调用。例如: let value String::from("Hello,…

有线网络下windows电脑被投屏方案实践

最近在看使用笔记本屏幕作PC副屏的解决方案 无线网络Miracast 如果使用Win10/11自带的Miracast方案(即windows系统中的:设置-系统-投影到此电脑),原则上需要通过Wi-Fi网络(这是因为Miracast就是Wi-Fi联盟组织提出的&a…

react-native 搭建环境及运行项目

目前创建的是0.73版本的,Node 的版本应大于等于 18,需要 Java Development Kit [JDK] 17版本的(必须是17版本)。安装完后你可以在命令行中输入 javac -version(请注意是 javac,不是 java)来查看…

JDK8 新特性和stream流的使用(一)

JDK 8 的新特性包括: Lambda表达式。允许编写更加简洁和灵活的代码,它允许将代码作为参数传递给其他方法或作为函数返回。Lambda表达式使用“->”操作符,并且可以包含一个或多个参数,这些参数的类型由编译器推断得出。123 …

一键优化B2B2C电商系统,开启无限商机

在当今竞争激烈的电商行业,B2B2C模式已成为众多企业选择的经营模式之一。通过一键优化B2B2C电商系统,企业能够开启无限商机,实现更大的发展空间。 首先,优化B2B2C电商系统可以帮助企业提升用户体验,吸引更多客户。通过…

仿生蝴蝶制作——蝴蝶翅膀制作

前言 上一次已经设计好了的翅膀图纸 接下来就是根据这个图纸来制作翅膀。 过程中其实可以不用尺子准确测量,直接用碳纤维棒比着剪下来就好了,然后把减下来的一截比着剪下另一只翅膀需要的材料。因为左右两只翅膀差别不能太大,所以这样是最好…

异步编程和asyncio

介绍异步编程的重要性和在Python中的应用,特别是在I/O密集型任务和网络编程场景下。 目录 理解异步编程 异步编程基本概念 任务与Future 异步编程的工作原理 事件循环 协程(Coroutines) 异步与同步代码的结合 深入asyncio模块 事件循…

CCF-C推荐会议 IEEE CLOUD‘24 3月24日截稿!深圳开启全球云计算新纪元!

会议之眼 快讯 IEEE CLOUD(IEEE International Conference on Cloud Computing)即IEEE云计算国际会议将于 2024 年7月7日至13日在中国深圳举行!IEEE CLOUD由lEEE Computer Society主办,CCF服务计算专委会、北京大学、IBM Research承办。CLOUD一直是研究人…

软件测试APP完整测试作业流程(附流程图),公司级软件测试流程化办公

目录 1. 概述 2. 软件测试流程 3. 软件测试周期人员活动图 4. 总结 1. 概述 1.1 目的 有效的保证软件质量; 有效的制定不同测试类型(软件系统测试、音频主观性测试、Field Trial、专项测试、自动化测试、性 能测试、用户体验测试)的软件…

【框架设计】MVC和MVVM对比图

1. MVC(Model-View-Controller) 单向通信View和Model通过Controller承上启下 2. MVVM(Model-View-ViewModel) 数据绑定M -> VM -> V DOM事件监听 V -> VM -> M 1. MVC是单向的,MVVM是双向的,…

【SpringCloud微服务全家桶学习笔记-GateWay网关(微服务入口)】

Gateway服务网关 API网关为微服务架构中的服务提供了统一的访问入口,客户端通过API网关访问相关服务。API网关的定义类似于设计模式中的门面模式,它相当于整个微服务架构中的门面,所有客户端的访问都通过它来进行路由及过滤。它实现了请求路…

二 超级数据查看器   讲解稿   导入功能

二 超级数据查看器 讲解稿 导入功能 APP下载地址 百度手机助手 下载地址4 ​ 讲解稿全文: 大家好。 今天我们对 超级数据查看器的 导入信息功能 做一下详细讲解。 首先,我们打开 超级数据查看器。 我们这个系统要实现的是,快速生…