多个服务部署在同一个服务器,使用不同的端口。

一、思考过程

  1. 如果不想带上端口号,就只能访问 80 或 443 端口。
  2. 可以用过二级目录区分服务,通过反向代理转发到不同的 Server。
  3. 可以用过子域名区分服务,通过反向代理转发到不同的 Server。

二、方案评估

  1. 对于不带端口号访问,以我目前的经验来看,找不到其它更好的方法,只能使用 80 或 443 端口。
  2. 使用二级目录区分服务,可行性很大。
    • 能通过二级目录名,明确区分服务。
    • 可是和直接使用端口号差别不大,只是把辨别服务的方法,从端口号变成了二级目录名。
    • 可能导致 url 过长。
    • 还是没有什么美观性。
  3. 使用子域名区分服务,可行性与二级目录相差无几。
    • 能通过子域名,明确区分服务。
    • 具有一定的美观性。

三、实践操作

使用子域名区分服务 的方式,然后使用 nginx 做反向代理,分发到不同的端口。

1、找到nginx的配置文件

  打开nginx的配置文件,打开  /安装路径/conf/nginx.conf,进行配置

2、修改配置

server {

        listen       80;

        server_name  *.abc.com;

        if ($http_host ~* "^(.*?)\.abc\.com$") {    #正则表达式

                set $domain $1;                     #设置变量
} location / { if ($domain ~* "shop") { proxy_pass http://abc.com:3001; #域名中有shop,转发到3001端口 } if ($domain ~* "mail") { proxy_pass http://abc.com:3002; #域名中有mail,转发到3002端口 } tcp_nodelay on; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #以上三行,目的是将代理服务器收到的用户的信息传到真实服务器上 root html; index index.html index.htm; #默认情况 } }

  

个人博客 wordpress + docker 搭建

nginx实现反向代理 配置多域名以及多端口号的更多相关文章

  1. Nginx之反向代理配置(二)

    前文我们聊了Nginx的防盗链.反向代理以及开启nginx代理缓存,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12417130.html:今天我们继续说ng ...

  2. Nginx之反向代理配置(一)

    前文我们聊了下Nginx作为web服务器配置https.日志模块的常用配置.rewrite模块重写用户请求的url,回顾请参考https://www.cnblogs.com/qiuhom-1874/p ...

  3. linux 安装 nginx 及反向代理配置

    Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,以下为Linux centos平台下安装nginx并配置反向代理的过程(采用源码安装的方式) 一:安装 ...

  4. 002-nginx-在 nginx 反向代理中使用域名,配置动态域名解析

    一.概述 代理(proxy),即中间人,它代替客户端发送请求给服务器,收到响应后再转给客户端.通常意义上的代理是从用户的角度讲的,用户通过某个代理可以访问多个网站,这个代理是靠近用户的,比如某些公司可 ...

  5. nginx之旅(第三篇):代理、正向代理、反向代理、代理的原理、nginx反向代理场景、nginx反向代理配置、nginx反向代理语法

    一.代理服务与反向代理 什么是代理服务 代理-代理办理(代理理财.代理收货.代理购物等等). 一般情况下,如果没有特别说明,代理技术默认说的是正向代理技术.关于正向代理的概念如下: 正向代理(forw ...

  6. nginx 反向代理配置(二)

    上一篇文章主要是对 nginx 各个模块做了一个介绍,以及对什么是反向代理在文章开头做了一个简单介绍,这篇文章我们主要来看下如何进行 nginx 反向代理的配置 proxy 模块      nginx ...

  7. nginx的反向代理和配置

    最近有打算研读nginx源代码,看到网上介绍nginx可以作为一个反向代理服务器完成负载均衡.所以搜罗了一些关于反向代理服务器的内容,整理综合. 一  概述 反向代理(Reverse Proxy)方式 ...

  8. nginx反向代理配置及常见指令

    nginx配置文件: /usr/local/nginx1.16.1/conf/nginx.conf nginx.conf默认的server配置: server{ listen 80; server_n ...

  9. 配置tomcat、nginx实现反向代理(需操作)

    配置tomcat.nginx实现反向代理现在我想通过nginx访问tomcat 这就要我们去修改nginx的核心配置文件,在其目录下的conf文件夹下的nginx.conf文件,那么首先我们就要了解该 ...

随机推荐

  1. 手机日期控件mobiscroll

    query Mobiscroll是一个用于触摸设备(Android phones, iPhone, iPad, Galaxy Tab)的日期和时间选择器jQuery插件.以及各种滑动插件可以让用户很方 ...

  2. 了解html

    什么是html? html:Hyper Text Markup Language(超文本标记语言) 纯文本:只能存储一些简单的字符(不能插入图片.视频...) 注意:html不是一种编程语言(它没有任 ...

  3. Codeforces Round #609 (Div. 2) 题解

    Equation Modulo Equality Long Beautiful Integer Domino for Young K Integers Equation \[ Time Limit: ...

  4. Java Web 之 SSM笔记

    好久没有写博文了呀呀呀........博客园的MarkDown还是...算了吧 自定义 Restful 风格结果集 参考资料 [SpringBoot专题]统一异常处理和统一数据返回前言实践运行结果 如 ...

  5. bower安装教程

    进入node.js官网下载相应操作系统的安装文件http://www.nodejs.org/download/ ,windows环境下载msi文件即可 打开下载的文件,一直点击下一步,完成安装 安装完 ...

  6. Oracle--RMAN Recover 缺失的归档操作

    一,环境简介 Oracle RMAN 备份的恢复分2个步骤:RESTRE 和 RECOVER.在这里回复的时候是依赖者归档文件的,当周一完成数据全备,保留归档的情况下,后期数据有问题,恢复的时候发现少 ...

  7. [Powershell]导出指定的定时计划任务

    <# .NOTES =========================================================================== Created wit ...

  8. Notepad++显示内容自动换行

  9. git生成并添加SSH key

    1.安装Git Bash https://git-scm.com/downloads 2.鼠标右键git bash here 3.执行以下命令: ①   cd ~/.ssh/    [如果没有对应的文 ...

  10. linux内核树的建立(Ubuntu)

    博客地址:http://www.cnblogs.com/zengjianrong/p/3178874.html 1.搜索源码 2.下载源码,下载路径可设为:/usr/src/ 3.解压源码 4.进入源 ...