docker nginx 部署前端踩坑记录

文章目录

  • 坑点1:localhost 与127.0.0.1

坑点1:localhost 与127.0.0.1

server {listen       80 default_server;client_max_body_size 20M;# 记录访问日志和错误日志access_log  /var/log/nginx/host.access.log  main;error_log  /var/log/nginx/error.log  warn;  # 降低日志级别至warn,减少非关键错误记录# 支持HTTP/1.1proxy_http_version 1.1;# 禁止Nginx自动添加Connection: close头部,保持长连接proxy_set_header Connection "";# 静态资源服务配置location / {alias /etc/nginx/www-data/dist/;index  index.html;try_files $uri $uri/ /index.html =404;  # 添加=404表示找不到文件时返回404状态码}# API 代理转发配置location /backend/ {proxy_pass http://192.168.102.76:8000/backend/;  ### 这是一个正确示例,但这里一定不能写localhost和127.0.0.1# 建议启用请求超时设置以防止长时间无响应proxy_connect_timeout 60s;proxy_send_timeout 60s;proxy_read_timeout 60s;# 关闭请求缓冲,适合文件上传场景proxy_request_buffering off;# 设置转发头信息proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 添加更多的代理头信息以适应后端可能的需求proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";}}

这个nginx的配置文件最终是挂载到了nginx容器内部,所以此处的 proxy_pass 配置为http://127.0.0.1:8000/backend/; 则是在容器内部的回环地址, 而不是你所期望的宿主机的回环地址,所以前端连不上后端。

  • 若前端使用nginx容器代理请求,则一定不能填写的示例有:
    • http://127.0.0.1:8000/backend/
    • http://localhost:8000/backend/
  • 若 后端服务 同样是容器启动的, 那么这里可以写的示例有:
    • http://【宿主机IP地址】:8000/backend/
    • http://【后端容器名称或服务名称或hostname】:8000/backend/

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

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

相关文章

JAVA_TEN-面向对象高级一

一.Static一 定义:叫静态,可以修饰成员变量、成员方法成员变量按有无static修饰,分为两种:类变量:有static 修饰,属于类,在计算机里只有一份,会被类的全部对象共享。实例变量&#x…

幻兽帕鲁开服教程

以下均为个人推荐,不喜勿喷,望审核大大明辨开服条件一台带公网的vps服务器(需开放udp),配置至少为4c16g,推荐8c32g开服需要准备的工具:steamcmd:https://steamcdn-a.akamaihd.net/cl…

lesson21:Python面向对象编程

目录 引言 一、了解面向对象编程(OOP):编程范式的革命 1.1 什么是面向对象编程? 1.2 OOP vs 面向过程:思维方式的差异 1.3 OOP的三大核心特性 二、类与对象:OOP的基石 2.1 类(Class&#…

基于卷积神经网络与小波变换的医学图像超分辨率算法复现

基于卷积神经网络与小波变换的医学图像超分辨率算法复现 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家,觉得好请收藏。点击跳转到网站。 1. 引言 医学图像超分辨率技术在临床诊断和治疗规划…

HCIP第一二章笔记整理

第一章:复习HCIA第一阶段应用层:自然语言转换为编码表示层:编码转换为二进制介质访问控制层:二进制转化为信号物理层:传输电信号第二阶段:OSI参考模型应用层:提供网络服务表示层:对数…

《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——2. C++基础:构建程序的坚实骨架

目录一、概述1.1 背景介绍:从UI到逻辑1.2 学习模式:Qt控制台应用二、C语法快速入门2.1 变量、数据类型与注释2.2 函数与代码封装2.3 循环与容器:批量处理三、面向对象编程:封装数据与行为四、Qt的核心扩展:信号与槽通信…

Navicat 远程连接SQLlite数据库

1、SQLlite数据库是一个本地.db文件,默认不支持远程连接; 2、Navicat 可以通过ntunnel_sqlite.php文件连接远程SQLlite库; 3、安装Navicat,安装完成,在安装目录下找到ntunnel_sqlite.php文件; 4、上传当前文…

OpenCV用于计算光流的一个类cv::optflow::DualTVL1OpticalFlow

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::optflow::DualTVL1OpticalFlow 是 OpenCV 中用于计算光流的一个类,特别地,它实现了基于双帧 TV-L1(Total V…

PyQt5在Pycharm上的环境搭建 -- Qt Designer + Pyuic + Pyrcc组合,大幅提升GUI开发效率

软件安装 目标软件: Python解释器Pycharm编辑器 Python官网: 点击访问Python官网 Pycharm官网:点击访问Pycharm官网 环境搭建 搭建完成后最终的环境详情: python安装路径:D:\ProgramEnviron\Python\Python311Pyth…

30天打牢数模基础-卷积神经网络讲解

案例代码实现一、代码说明本案例使用PyTorch实现一个改进版LeNet-5模型,用于CIFAR-10数据集的图像分类任务。代码包含以下核心步骤:数据加载与预处理(含数据增强,划分训练/验证/测试集);定义CNN网络结构&am…

Dev-C++——winAPI贪吃蛇小游戏

🚀欢迎互三👉:雾狩 💎💎 🚀关注博主,后期持续更新系列文章 🚀如果有错误感谢请大家批评指出,及时修改 🚀感谢大家点赞👍收藏⭐评论✍ 今天水一篇吧…

【openbmc6】entity-manager

文章目录 2.1 事件监听:dbus在linux上使用的底层通信方式多半是unix domain socket ,事件的到来可被抽象为:socket上有数据,可读 2.2 事件处理:由于主线程肯定有逻辑得跑,因此新开一个线程甚至多个线程专门用来监听和处理事件,但存在多线程就意味着可能存在竞争,存在竞…

Java 实现 UDP 多发多收通信

在网络通信领域,UDP(用户数据报协议)以其无连接、高效率的特点,在实时通信场景中占据重要地位。本文将结合一段实现 UDP 多发多收的 Java 代码,详细解析其实现逻辑,帮助开发者深入理解 UDP 通信的底层逻辑与…

Java学习第六十二部分——Git

目录 一、关键概述 二、核心概念 三、常用命令 四、优势因素 五、应用方案 六、使用建议 一、关键概述 提问:Git 是什么? 回答:一句话,分布式版本控制系统(DVCS),用来跟踪文件&#…

CDN和DNS 在分布式系统中的作用

一、DNS:域名系统(Domain Name System) 1. 核心功能 DNS是互联网的“地址簿”,负责将人类易记的域名(如www.baidu.com)解析为计算机可识别的IP地址(如180.101.50.242)。没有DNS&…

uniapp用webview导入本地网页,ios端打开页面空白问题

目前还没解决,DCloud官方也说不行 IOS下webview加载本地网页时,无法加载资源 - DCloud问答

软考 系统架构设计师系列知识点之面向服务架构设计理论与实践(8)

接前一篇文章:软考 系统架构设计师系列知识点之面向服务架构设计理论与实践(7) 所属章节: 第15章. 面向服务架构设计理论与实践 第3节 SOA的参考架构 15.3 SOA的参考架构 IBM的Websphere业务集成参考架构(如图15-2所示,以下简称参考架构)是典型的以服务为中心的企业集…

基于 Docker 及 Kubernetes 部署 vLLM:开启机器学习模型服务的新篇章

在当今数字化浪潮中,机器学习模型的高效部署与管理成为众多开发者和企业关注的焦点。vLLM 作为一款性能卓越的大型语言模型推理引擎,其在 Docker 及 Kubernetes 上的部署方式如何呢?本文将深入探讨如何在 Docker 及 Kubernetes 集群中部署 vL…

工业互联网六大安全挑战的密码“解法”

目录 工业互联网密码技术应用Q&A Q1:设备身份认证与接入控制 Q2:通信数据加密与完整性保护 Q3:远程安全访问 Q4:平台与数据安全 Q5:软件与固件安全 Q6:日志审计与抗抵赖 首传信安-解决方案 总…

基于springboot的在线问卷调查系统的设计与实现(源码+论文)

一、开发环境 1 Java语言 Java语言是当今为止依然在编程语言行业具有生命力的常青树之一。Java语言最原始的诞生,不仅仅是创造者感觉C语言在编程上面很麻烦,如果只是专注于业务逻辑的处理,会导致忽略了各种指针以及垃圾回收这些操作&#x…