当前位置: 首页 > news >正文

dcoker+nginx解决前端本地开发跨域

步骤

  1. docker 拉取nginx镜像
  2. 跑容器 并配置数据卷nginx.conf

nginx.conf文件配置

这里展示server

server {listen       80;listen  [::]:80;server_name  localhost;#access_log  /var/log/nginx/host.access.log  main;location / {# 当我们访问127.0.0.1:8028就会跳转到http://127.0.0.1:5173;proxy_pass  http://xxxxx:5173/;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_set_header Host $host; # $host是nginx内置变量,表示客户端请求的主机名。proxy_set_header X-Real-IP $remote_addr;# $remote_addr是nginx内置变量,表示客户端的IP地址。# 这条指令将会将请求的X-Forwarded-For字段设置为客户端的IP地址,并$proxy_add_x_forwarded_for是nginx内置变量,表示代理服务器的IP地址。proxy_set_header X-Forwarder-For $proxy_add_x_forwarded_for;}location /api {# 请求交给名为api_serve的upstream上# proxy_pass http://api_serve;# rewrite ^/api/(.*)$ /$1 break;proxy_pass  http://这里的ip地址填宿主机的IP:8329;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarder-For $proxy_add_x_forwarded_for;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   /usr/share/nginx/html;}
}

宿主机IP地址获取

前端项目的公网地址
在这里插入图片描述

在这里插入图片描述
把Netword地址挑一个上面location /proxy_pass的地址中即可

cmd 输出ipconfig 将下面的地址复制到nginx中
在这里插入图片描述
为什么不能直接配置127.0.0.1,如果nginx配置了这个,访问的是容器内的127.0.0.1而不是宿主机的。

提示

真实项目中后端服务肯定在服务器上,而自己开发的项目才需要在容器nginx内配置宿主机的IP地址。

方式二Vite和Webpack开发服务器

(vite/webpack开发服务器) 这个比较简单看文档即可,有需要演示的可以评论留言。

方式三BFF层

前端搭建BFF层,将路径做替换即可,这个在我nginx文章里有讲解参考地址。

方式四JSONP

限制太多
1、不能接受http状态码
2、只能支持get请求
3、不能发送和接受http头

http://www.lryc.cn/news/339840.html

相关文章:

  • 基于云开发和微信小程序的爱宠家系统
  • 光场相机建模与畸变校正改进方法
  • 面试算法-173-二叉树的直径
  • Python Typing模块
  • 【鸿蒙开发】饿了么页面练习
  • 鸿蒙开发学习笔记第一篇--TypeScript基础语法
  • Java基础知识总结(55)
  • python爬虫 - 爬取微博热搜数据
  • Pytorch-张量形状操作
  • k8s的service为什么不能ping通?——所有的service都不能ping通吗
  • [Linux] 权限控制命令 chmod、chown和chgrp
  • RNN知识体系构筑:详尽阐述其理论基础、技术架构及其在处理序列数据挑战中的创新应用
  • LeetCode 1702.修改后的最大二进制字符串:脑筋急转弯(构造,贪心)
  • 图片像素轻松缩放自如,支持批量将多张jpg图片像素放大,高效掌握图片的像素
  • FILE类与IO流
  • 基于java+springboot+vue实现的智慧党建系统(文末源码+Lw+ppt)23-58
  • HiveSQL基础Day03
  • houdini 学习过程
  • Angular学习第四天--问题记录及父子组件问题
  • 如何拿捏2024年的B端设计?(附工具推荐)
  • 【蓝桥杯】2024年第15届真题题目
  • LLM生成模型在生物单细胞single cell的应用:scGPT
  • 力扣15题. 三数之和
  • 项目经理好还是产品经理好?入行必读!
  • Elastic安装后 postman对elasticsearch进行测试
  • JPA (Java Persistence API)
  • 实战要求下,如何做好资产安全信息管理
  • [matlab]matcaffe在matlab2023a安装和配置过程
  • 【word2pdf】Springboot word转pdf(自学使用)
  • 3_2Linux中内核级加强型火墙的管理