Web服务是可以运行在80端口的,而且默认也是监听80端口。为什么用nginx做反向代理,应该是跟题主的应用环境有关

题主当前的应用环境

按照题主的意思,应该是你当前的web服务器上监听的是非80端口,这种有可能是你当前使用的web服务器上有多个web应用,且监听的是不同的端口,比如 8080、8081、8082……。这种环境应该是网站在很初始的阶段,因为经费紧张,所以需要一台web服务器部署多个web应用(假设)

但是在公网访问web服务的时候,默认是使用80端口,但是web服务监听的是非80端口,所以需要通过反向代理服务器,将请求转发给对应的web服务器上的web应用。

接下来需要了解一下什么是反向代理和负载均衡,有利于之后的架构优化

什么是反向代理

就是真实服务器不直接访问,而是通过代理进行访问。客户端直接访问的是反向代理服务器,然后反向代理服务器接收用户的请求然后重新发起请求去请求后端对于的web服务,web服务处理完成之后,将结果返回给反向代理服务器,最后由反向代理服务器将结果响应给客户端。

这样做有什么好处呢?

(1)解决非80端口的问题。

(2)隐藏真实的web服务器,同时在反向代理服务器可以做安全配置,提供安全性。

(3)有利于后期架构优化,比如做负载均衡

nginx作为web服务器软件,同时也可以实现反向代理。

什么是负载均衡

负载均衡 (load balance),将多个请求分摊到多个操作单元上执行。当系统面临大量用户访问,负载过高的时候,通常会使用增加服务器数量来进行横向扩展,使用集群和负载均衡提高整个系统的处理能力。

实现负载均衡,除掉昂贵的硬件设备实现外,还有软件实现,主要有lvs、haproxy和nginx。nginx实现负载均衡是基于nginx反向代理功能的,所以一开始使用nginx做反向代理有利于后期做负载均衡。

总结

Web服务是可以运行在80端口的,使用nginx做反向代理,可以解决web应用使用非80端口的问题,还有利于后期的架构优化演变。

直接让web服务运行在80端不行吗,为什么要用nginx反向代理?相关推荐

  1. 分布式与微服务系列(三)、SpringBoot+Zookeeper集群+Nginx反向代理+Dubbo分布式托管(提供者、消费者)

    SpringBoot+Zookeeper集群+Nginx反向代理+Dubbo分布式托管(提供者.消费者) 一.软件架构和微服务需求 1.1.微服务需求 1.2.框架选择 1.3.集群分布(下面为此图实 ...

  2. 在一台win10系统的电脑里安装虚拟机运行CentOS7并实现nginx反向代理从而用域名访问本机的微服务项目

    在虚拟机里的CentOS7安装配置nginx,之前需要一些依赖库作为编译安装的条件,具体作用和命令详情跳转我之前的博客. 安装并使用VMware-workstation-full-15.5.0安装Ce ...

  3. Tomcat系列之服务器的基本配置及Nginx反向代理tomcat服务

    大纲 一.Tomcat 基本配置 1.为Tomcat提供SysV脚本 2.catalina 脚本讲解 3.telnet 登录管理Tomcat 4.配置Tomcat虚拟主机 5.Tomcat图形管理接口 ...

  4. 微服务架构(5):nginx反向代理cors解决跨域

    微服务架构(5):nginx反向代理&&cors解决跨域 学习目标 1.使用域名访问本地项目 1.1.统一环境 1.2.域名解析 1.3.解决域名解析问题 1.4.nginx解决端口问 ...

  5. Nginx反向代理+Go服务实践

    前言 在后端开发期间,会为前端或者平台上提供API服务接口,这时.我们看完今天的文章可以详细了解到Nginx反向代理到后端服务上的过程. Nginx: 是一个高性能的HTTP和反向代理web服务器,同 ...

  6. Nginx反向代理 实现Web负载均衡

    实现负载均衡的方式有很多种,DNS.反向代理.LVS负载均衡器(软件实现).F5(负载均衡器,硬件,非常昂贵)这里我们只提到基于DNS,以及反向代理的方式来实现负载均衡Web服务       DNS服 ...

  7. keepalived实现高可用nginx反向代理(Web集群)

    一.代理服务器概述 代理服务可简单的分为正向代理和反向代理: 1)正向代理: 用于代理内部网络对Internet的连接请求(如VPN/NAT),客户端指定代理服务器,并将本来要直接发送给目标Web服务 ...

  8. Web集群案例实战 -- Nginx 反向代理根据URL中的目录地址实现代理转发 -- 案例实战

    Nginx 反向代理根据URL中的目录地址实现代理转发 -- 案例实战 前言 一.需求背景 前言 本环境是基于 Centos 7.8 系统构建Nginx学习环境 具体构建,请参考 Nginx-1.18 ...

  9. 云服务器,Linux上安装xampp,搭建node服务,云服务器Firewalld、iptables,nginx反向代理

    目录 写在前面的 前期准备 下载xampp: xampp安装步骤 1.首先链接远程linux服务器 2.xshell终端执行安装命令 3.启动:xampp服务 4.访问数据库,修改数据库密码 安装守护 ...

最新文章

  1. python的sort_python sort、sorted
  2. 利用注解 + 反射消除重复代码(Java项目)
  3. ubuntu查看python版本-linux查看python安装路径,版本号
  4. ql的python学习之路-day10
  5. 【Linux系统编程】进程间通信概述
  6. 2021-10-28 SAP Spartacus SSR 性能方面的一些学习笔记
  7. 最简易上手的numpy学习笔记三
  8. PHP vscode+XDebug 远程断点调试服务器上的代码
  9. Android相关资源
  10. datetime使用
  11. 罗技驱动LOGI G Hub永久保存设置(板载模式)
  12. 浏览器安装fehelper插件,亲测可行
  13. docker装LibreELEC_瞎弄 篇一:J3455NUC虚拟机安装LibreELEC核显直通HDMI输出
  14. ape是什么格式?ape怎么转mp3?
  15. ONF和ON.Lab合并为一 加速推进SDN落地
  16. eNSP配置Martini方式VPLS
  17. 安全狗核心产品入选《云原生产品目录》云原生安全实力备受认可!
  18. GAN GAN Inversion
  19. Unity实现刀光特效
  20. [导入]收录Google公益广告的答案

热门文章

  1. python迷你停车场管理系统_python实现停车管理系统
  2. Flink-org.apache.flink.streaming.api.windowing.windows.Window
  3. Spring Boot(5) web开发(3)拦截器、文件上传、异常处理
  4. this调用语句必须是构造函数中的第一个可执行语句_详解-JavaScript 的 this 指向和绑定...
  5. python 数据清洗 豆瓣电影_Python高阶操作--关于数据清洗
  6. 共用体变量不能在定义时初始化_【C语言资料更新】共用体联合体
  7. python周期执行-用Python执行周期性动作
  8. 清华大学 ucore-lab0 MacOS
  9. Tomcat的部署+第一个Servlet
  10. 结构体在固件库中的应用