企业的公网IP只有一个的情况下,由于端口只允许给一个App进程占用,固无法提供多种web服务。windows下的IIS有匹配主机头的功能,其实也可以使用nginx来实现多域名服务方案。

一、原始方案

域名 IP地址
host.com 192.168.0.10
server1.com 192.168.0.11
server2.com 192.168.0.12

访问时指向到三台服务器上,即三个域名分别提供三个IP地址。

二、改造方案

我们在host.com服务器上部署一套nginx程序,利用nginx自动匹配域名,并采用代理的形式转发数据。

1.增加域名

域名 IP地址
host.com 192.168.0.10
server1.com 192.168.0.11
server2.com 192.168.0.12
server1.host.com 192.168.0.10
server2.host.com 192.168.0.10

说明:域名可以是一级或者多级,这里我们采用二级域名作为示例。

2. 在host.com部署nginx

  • 关于nginx的安装在这里不做描述。
  • 修改nginx的配置文件 conf/nginx.conf
worker_processes  4;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;fastcgi_connect_timeout 300;fastcgi_send_timeout 300;fastcgi_read_timeout 300;sendfile        on;keepalive_timeout  65;gzip  on;server {listen 80;server_name server1.host.com;location / {proxy_pass http://server1.com/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;client_max_body_size 10m;}}server {listen 80;server_name server2.host.com;location / {proxy_pass http://server2.com/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;client_max_body_size 10m;}}
}

nginx 一个端口多域名服务方案相关推荐

  1. nginx一个端口配置多域名服务

    本文演示如何在一个端口上配置多个域名. user nginx;worker_processes auto;error_log /var/log/nginx/error.log;pid /run/ngi ...

  2. linux nginx 配置端口访问,Linux入门教程:ubuntu 16.04配置nginx服务器实现一个IP一个端口多个站点,ubuntunginxNginx 使用异步...

    Linux入门教程:ubuntu 16.04配置nginx服务器实现一个IP一个端口多个站点,ubuntunginxNginx 使用异步 特点: Nginx 可以部署在网络上使用 FastCGI,脚本 ...

  3. Nginx下本机多项目虚拟主机配置[一个端口多个站点]

    nginx下多项目虚拟主机配置: 假如你需要在一台机子上,用不同的域名访问和运行不同的项目,这个时候你就需要vhost配置: "本机虚拟域名.一个端口多个站点" 0.hosts文件 ...

  4. nginx配置一个端口下多个路径转发到html下不同目录

    工作中用到使用nginx配置一个端口下多个路径转发到html下不同目录,做一个总结记录. 目前知道的有三种方法可以实现,分别是使用root+location.alias.try_files. 假设一个 ...

  5. nginx——不同前端项目共用一个端口

    文章目录 以前的配置项 配置文件改进 达到效果 注意点 以前的配置项 之前再nginx中,针对前端页面的跳转等,通常会采取类似如下的方式实现: server {listen 8040;server_n ...

  6. 使用nginx 同一端口根据不同域名转发到不同端口

    该文章属于原创类型,其他网站转载必须来源于蚂蚁课堂www.itmayiedu.com 需求:在一台服务器上部署两个tomcat项目,都想共用同一个端口号80.但是一台服务器tomcat端口号不能重复? ...

  7. 【Nginx】 Nginx实现端口转发

    什么是端口转发 当我们在服务器上搭建一个图书以及一个电影的应用,其中图书应用启动了 8001 端口,电影应用启动了 8002 端口.此时如果我们可以通过 localhost:8001 //图书 loc ...

  8. n2n内网穿透打洞部署全过程 + nginx公网端口映射

    内网穿透.打洞工具有很多,此前在windows上使用的是vidcc这个玩意,也正因为linux不支持.自此在linux尝试过一些打洞工具,ssh 反向代理这些,因为安全性不便捷等多种原因,最终选择了n ...

  9. node如何让一个端口同时支持https与http

    众所周知node是一个高性能的web服务器,使用它可以很简单的创建一个http或https的服务器. 比如一个很简单的http服务器: var http = require('http'); var ...

最新文章

  1. x264的一些参数设置对编码效率的影响
  2. 【多线程】ThreadPoolExecutor类源码解析----续(二进制相关运算)
  3. Java反序列化json内存溢出_反序列化JSON时出现线程错误
  4. 牛客-十二桥问题【最短路,状压dp】
  5. 275. H-Index II 递增排序后的论文引用量
  6. 【Elasticsearch】 elasticsearch之Recovery
  7. Spark 学习(十一) spark使用hive的元数据信息
  8. 8、QuickExec命令行的使用
  9. 我的几个.NET编程习惯
  10. 2月第4周回顾:IT求职困惑不少 虚拟化热点不断
  11. rails mysql2 mac_用Mac osx10.6在Ruby on Rails上安裝mysql2 gem。
  12. 【Java集合的详细研究4】Java中如何遍历Map对象的4种方法
  13. 数据库实现中文汉字排序终极指南
  14. CI框架初识-视图渲染
  15. 差分管电路图_电子管差分放大电路改造方案
  16. 解线性方程组 c语言,C语言解线性方程组
  17. SDOI2019 R2退役记
  18. python测试驱动开发pdf_python 测试驱动开发的简单例子
  19. P1605 迷宫 java
  20. php大牛应该掌握的技术,一个编程大牛给PHP初学者的50条忠告

热门文章

  1. 信创办公--基于WPS的Word最佳实践系列(表格常见问题的处理)
  2. 用Python实现对表格中某一列所有数据加减乘除
  3. 二本渣渣的我有幸通过简历,五轮面试,成功拿到阿里P6的offer!
  4. 产品经理vs产品运营:产品经理如何与运营进行高效的配合?
  5. 2016年1月10日
  6. 解锁华为NFC多种高科技玩法
  7. 基于51单片机密码锁(修改密码,串口上锁解锁,仿真)
  8. 基于matlab得图像感兴趣区域提取
  9. LayUi会议OA系统之用户管理
  10. 绝了,被领导和同事嘲笑了,2月无情被辞,想给测试人提个醒...