webpack devServer proxy 有哪些常用配置项,反向代理时修改 host 要怎么做

webpack devServer 的 proxy 配置项有以下几个常用选项:

  1. target: 指定要代理的目标 URL14

  2. changeOrigin: 设置为 true 时,会将请求头中的 Host 修改为目标 URL 的主机名45

  3. pathRewrite: 用于重写请求路径4。例如:

javascript 复制代码
pathRewrite: {
  '^/api': ''
}

这会将 /api 开头的请求路径中的 /api 替换为空字符串。

  1. secure: 设置为 false 可以接受运行在 HTTPS 上且证书无效的后端服务器4

  2. context: 可以是路径字符串或路径数组,用于配置哪些请求需要被代理1

要修改 Host 头,有两种方法:

  1. 设置 changeOrigin 为 true:
javascript 复制代码
proxy: {
  '/api': {
    target: 'http://example.com',
    changeOrigin: true
  }
}

这会自动将 Host 头设置为目标 URL 的主机名5

  1. 使用 headers 选项手动设置:
javascript 复制代码
proxy: {
  '/api': {
    target: 'http://example.com',
    headers: {
      Host: 'example.com'
    }
  }
}

这种方法可以更精确地控制 Host 头的值1

修改 Host 头的主要目的是解决跨域问题,因为服务器可能会根据 Host 头来判断请求的来源。通过修改 Host 头,可以让服务器认为请求是从允许的域名发出的,从而避免跨域限制5

Citations:

1 https://webpack.docschina.org/configuration/dev-server/

2 https://blog.csdn.net/qq_42062727/article/details/107681498

3 https://blog.csdn.net/weixin_43870259/article/details/130310293

4 https://www.cnblogs.com/azoux/p/17840835.html

5 https://juejin.cn/post/7281147452979462202

相关推荐
微信开发api-视频号协议19 小时前
企业微信外部群开发自动化实践过程
java·前端·微信·自动化·企业微信·ipad
甲维斯19 小时前
Fable5:20美金的顶级设计师!
前端·人工智能
kyriewen19 小时前
我同时用了 Claude Code、Cursor 和 Codex,说说三个工具的真实差距——2026 年选错工具比不用 AI 更浪费时间
前端·ai编程·claude
Jackson__20 小时前
为了拯救我的腰椎和颈椎,我做了款浏览器插件!
前端·javascript·开源
闲猫20 小时前
Python FastAPI + SQLAlchemy 入门教程:从零搭建你的第一个 Web 应用
前端·python·fastapi
林小帅20 小时前
NestJS v11 + Prisma v7 ESM 迁移配置解析
前端·javascript·后端
IT_陈寒21 小时前
React的setState竟然不是立刻生效的,害我调试半天
前端·人工智能·后端
简简单单就是我_hehe21 小时前
前端埋点日志解决方案:完整 User-Agent 解析工具实现,爬虫识别、设备品牌、操作系统、浏览器版本全解析(附完整源码)
前端·爬虫
William_Xu21 小时前
Vue 2 与 Vue 3 生命周期对比
前端
hoLzwEge1 天前
Volta实战:项目级Node版本管理 + 自定义安装目录
前端框架·node.js