iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >nginx多域名转发的实现
  • 263
分享到

nginx多域名转发的实现

nginx多域名转发nginx多域名 2023-03-06 08:03:26 263人浏览 薄情痞子
摘要

目录前言基础概念前言 昨天碰到Nginx做多域名转发,简单总结下nginx的使用,此文只是便于开发理解,并不会涉入太深的东西。有错误的地方,还望大家多指正。 基础概念 DNS DNS

前言

昨天碰到Nginx做多域名转发,简单总结下nginx的使用,此文只是便于开发理解,并不会涉入太深的东西。有错误的地方,还望大家多指正。

基础概念

DNS

DNS是Domain Name System的缩写,即域名系统。DNS是internet的一项服务,一般叫域名服务或者域名解析服务,主要是提供网站域名与ip地址的相互转换的服务。

域名和IP的对应关系

域名与IP地址之间是呈一一对应的关系,但多个域名可以对应同一个IP地址。就像一个人的姓名和身份证号码之间的关系,显然记忆人的名字要比身份证号容易的多。IP地址是网络上标识用户站点的数字地址,为了简单好记,采用域名来代替IP地址表示站点地址,DNS讲域名解析成IP地址,使其一一对应。

DNS工作原理

在Internet上,一个域名要由两台域名服务器提供“权威性的”域名解析。如果是国际域名,域名注册管理机构就是Interinc,如果是国内域名,域名注册管理机构就是CNNIC。所有的域名必须在两个注册机构上注册才能正常使用。

比如,你现在要访问一个网站,例如www.baidu.com,你的电脑需要知道这个站点的IP地址是多少才能访问。于是它会自动向您所在区域的“主控DNS”服务器发出询问,即“www.baidu.com”的IP是多少?如果该服务器上没有该域名的记录,它会到上一级的DNS去查找,一直重复进行直到找到为止,如果到最后一级仍然没有找到。此时会到权威性的DNS上查找,然后把对应的ip信息返回给你的电脑。你的电脑就可以与www.baidu.com对应的服务器进行通信了。这样一级一级的查询被称为“递归式”的查询。

hosts文件

hosts文件是本地的一个无后缀的系统文件,需要管理员权限才能修改其内容。从上面DNS的解析过程可以看出,每次DNS解析可能会经过很多DNS服务器的转发最终才能获取到真正的IP地址,这样会很没效率。所以在计算机的本地也有一个DNS解析文件,即hosts文件。当你把hosts中的 www.baidu.com指向正确的百度服务器地址的时候,电脑会与正确的服务器进行交互。如果本地hosts,没有配置映射关系,那么它会到局域网的DNS服务器寻找对应的映射关系。如果仍然没有,它就会在本地对应节点的DNS去查找,重复上面所说的步骤。

nginx反向代理

代理:其实就是中介,A和B本来可以直连,但是在A和B之间加入了C。 正向代理

即上面的dns,它代理的是客户端,为客户端收发请求,对server断是透明的。用浏览器访问 Http://www.Google.com 时,被残忍的block,于是你可以在国外搭建一台代理服务器,让代理帮我去请求google.com,代理把请求返回的相应结构再返回给我。

在这里插入图片描述

反向代理

即nginx的一个功能,它代理的是服务器,它为server端转发请求,对client端是透明的。当我们请求 www.baidu.com 的时候,就像拨打10086一样,背后可能有成千上万台服务器为我们服务,但具体是哪一台,你不知道,也不需要知道,你只需要知道反向代理服务器是谁就好了,www.baidu.com 就是我们的反向代理服务器,反向代理服务器会帮我们把请求转发到真实的服务器那里去。Nginx就是性能非常好的反向代理服务器,用来做负载均衡

在这里插入图片描述

nginx加hosts做多域名映射

比如你的两个应用的域名是a.test.com和b.test.com。

找到C:windowsSystem32driversetc目录下的hosts文件,用超级管理员权限打开。在文件尾部加入

a.test.com 127.0.0.1
b.test.com 127.0.0.1

修改nginx.conf文件(由于nginx.conf的配置很多,这里只是用最简单的事例说明)在http的{}内部加入server。加入内容如下:

server {
  listen 80;
  server_name a.test.com;   //填入自己项目对应的域名
  charset utf-8;
  error_log logs/error.log;
  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
    proxy_pass http://127.0.0.1:8888; //填入自己项目的ip加端口号(此处的项目没有工程上下文,只有端口号)
  }
}

server {
  listen 80;
  server_name b.test.com;   //填入自己项目对应的域名
  charset utf-8;
  error_log logs/error.log;
  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;
    proxy_pass http://127.0.0.1:8889; //填入自己项目的ip加端口号(此处的项目没有工程上下文,只有端口号)
  }
}

修改完以后,再重新加载nginx配置文件

nginx.exe -s reload

到此这篇关于nginx多域名转发的实现的文章就介绍到这了,更多相关nginx多域名转发内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: nginx多域名转发的实现

本文链接: https://www.lsjlt.com/news/198423.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • nginx多域名转发的实现
    目录前言基础概念前言 昨天碰到nginx做多域名转发,简单总结下nginx的使用,此文只是便于开发理解,并不会涉入太深的东西。有错误的地方,还望大家多指正。 基础概念 DNS DNS...
    99+
    2023-03-06
    nginx多域名转发 nginx多域名
  • nginx多域名转发如何实现
    这篇文章主要介绍“nginx多域名转发如何实现”,在日常操作中,相信很多人在nginx多域名转发如何实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”nginx多域名转发如何实现”的疑惑有所帮助!接下来,请跟...
    99+
    2023-07-05
  • nginx怎么配置域名转发
    1. 首先在nginx配置文件中找到server模块,添加以下代码:```server {listen 80;server_name...
    99+
    2023-06-13
    域名转发 域名
  • Nginx怎么跨域配置实现支持多域名
    要实现Nginx的跨域配置,以支持多个域名,可以使用Nginx的`add_header`指令来设置`Access-Control-A...
    99+
    2023-10-25
    Nginx
  • Nginx实现301跳转至https的根域名展示
    这篇文章主要介绍了使用Nginx实现301跳转至https的根域名,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。基于 SEO 和安全性的考量,需要进行 301 跳转,...
    99+
    2023-06-05
  • nginx配置域名转发的方法是什么
    1. 打开nginx配置文件,一般位于/etc/nginx/nginx.conf。2. 在http段内添加server段,配置域名和...
    99+
    2023-05-31
    域名转发 域名
  • 解决spring cloud zuul与nginx的域名转发问题
    nginx配置 proxy_set_header Host $http_host; spring zuul配置 #设置转发时携带域名 zuul: add-hos...
    99+
    2024-04-02
  • Nginx主机域名配置实现
    目录一、配置多个端口访问不同文件二、配置不同域名访问不同文件三、配置不同域名访问同个文件一、配置多个端口访问不同文件 相同域名,不同端口,不同文件 #两个不同文件夹,分别存放不同文件...
    99+
    2023-03-15
    Nginx主机域名配置 Nginx主机域名
  • Nginx 实现端口转发
    首先我们需要找到服务器部署的nginx的配置文件nginx.conf: 找到如下代码段实现配置端口转发 # nginx代理转发server { listen 80; server_name x.x.x.x; lo...
    99+
    2023-09-03
    nginx 运维 服务器
  • golang 域名转发
    Golang是一种强大的编程语言,常用于web开发、网络编程等领域。在网络编程中,域名转发是一个重要的功能。本文将介绍如何使用Golang实现域名转发。域名解析在进行域名转发之前,我们需要先进行域名解析。域名解析是指将域名转换成IP地址的过...
    99+
    2023-05-16
  • 域名转发golang
    一、前言在互联网时代,域名是网络中的重要资源。通过域名,可以快速地找到需要的网络资源,访问起来也更加便捷。但是,当我们需要把一个域名指向到另外一个地址时,就需要用到域名转发技术。今天我们将介绍如何使用golang实现域名转发。二、什么是域名...
    99+
    2023-05-16
  • Nginx怎么实现一个站点配置多个域名
    这篇文章给大家分享的是有关Nginx怎么实现一个站点配置多个域名的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一个站点配置多个域名server {  list...
    99+
    2024-04-02
  • Nginx同一个域名配置多个项目的实现方法
    使用Nginx要在同一个域名下配置多个项目有两种方式: nginx按不同的目录分发给不同的项目 启用二级域名,不同的项目分配不同的二级域名 1.nginx按不同的目录分发...
    99+
    2024-04-02
  • spring cloud zuul与nginx的域名转发问题如何解决
    今天就跟大家聊聊有关spring cloud zuul与nginx的域名转发问题如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。nginx配置proxy_set_header&...
    99+
    2023-06-20
  • Nginx配置二级域名的方法实现
    目录1、原始配置文件如下2、配置二级域名当一个域名需要使用在两个项目上后,我们就需要使用到二级域名,在 Nginx 中配置二级域名如下: 1、原始配置文件如下 worker_proc...
    99+
    2023-03-06
    Nginx配置二级域名 Nginx 二级域名
  • nginx进行端口转发的实现
    目录使用场景解决方案使用场景 1、内网有一台服务器的端口需要映射到外网(举例外网的服务器申请了一个域名,然后给该域名做了一个nignx的配置,然后配置中需要访问一个内网的http的服...
    99+
    2023-03-07
    nginx 端口转发
  • Nginx如何实现同一个域名配置多个项目
    这篇文章主要介绍Nginx如何实现同一个域名配置多个项目,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!使用Nginx要在同一个域名下配置多个项目有两种方式:nginx按不同的目录分发给不同的项目启用二级域名,不同的项...
    99+
    2023-06-14
  • Nginx主机域名配置如何实现
    本篇内容主要讲解“Nginx主机域名配置如何实现”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nginx主机域名配置如何实现”吧!一、配置多个端口访问不同文件相同域名,不同端口,不同文件#两个不...
    99+
    2023-07-05
  • Nginx反向代理转发tomcat的实现
    刚刚接触Nginx,记录下学习过程 先说正向代理,比如要访问youtube,但是不能直接访问,只能先找个翻墙软件,通过翻墙软件才能访问youtube. 翻墙软件就叫做正向代理。 所谓...
    99+
    2024-04-02
  • php域名转向如何实现
    这篇文章主要介绍了php域名转向如何实现的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php域名转向如何实现文章都会有所收获,下面我们一起来看看吧。php域名转向的实现方法:1、通过“echo '<...
    99+
    2023-07-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作