精华内容
下载资源
问答
  • 一台主机可以有几个域名
    千次阅读
    2021-11-16 14:45:50

    1,一个ip地址绑定几个域名?

    1.1 为什么会出现这样的需求?-客户端如何区别同一个服务器的不同网站?

    因为在一台服务器中,可能会部署多个项目,这个时候如果想一台客户机能够访问到多个网站,就必须要一个ip地址绑定多个域名,

    如果服务器使用Apache,那么在Apache的配置文件中加入VirtualHost即可新增虚拟主机:

    <VirtualHost 10.0.0.1>
    ServerAdmin admin@admin
    DocumentRoot “D:/website1”
    ServerName http://myhost1.com
    DirectoryIndex index.php

    <VirtualHost 10.0.0.1>
    ServerAdmin admin@admin
    DocumentRoot “D:/website2”
    ServerName http://myhost2.com
    DirectoryIndex
    index.php

    以上就定义了两个域名http://myhost1.com和http://myhost2.com,分别在不同的根目录,通过这样的配置Apache如果收到http://myhost1.com的请求,那么就到d:/website1里寻找对应的页面,如果是http://myhost2.com的请求,那么就到d:/website2里寻找对应的页面。通常Apache还有一个默认网站,这个网站是可以使用IP地址访问的,如果将这个网站设置为无效,那么这个主机就无法通过IP地址直接访问HTTP资源。

    如果服务器没设置默认网站,那么IP地址也无法直接访问主机。所以,如果你直接通过IP地址访问网站,会遇到两种情况:1、服务器设置了默认网站,或者使用IP作为主机名去匹配请求的Host字段,那么你通过IP访问的就是这个网站;2、服务器没有设置默认网站,或者默认网站被禁止,那么你通过IP无法打开任何东,通常遇到的是404错误(找不到页面),在我使用过的几个虚拟主机服务商那,遇到的都是类似的错误。另外,不管是IIS或者Apache或者其它类型的网站服务器软件,不仅仅支持多域名,也支持多IP,也就是一个服务器同时有多个域名和多个IP,互相之间是互不干扰的。

    1.2 一台主机能有多个ip地址吗?

    一台主机的可以有多个ip地址,但是前提条件是安装了多个网卡,一个网卡对应于唯一的ip地址,路由器中为什么有多个网卡,因为路由器实际上就是一个有多块网卡的计算机,最低有两块,一个入口,一个进口,入口和进口分别处于不同的子网,只有这样路由器才能实现ip分组的接收和转发

    更多相关内容
  • 一台服务器上用一个域名部署多个项目 写在前面 当你学一个新的技术的时候一直听别人讲,是学不会的。 一定要每学一个东西就自己去动手做点什么。脑子里一个自己的想法,然后不停的去百度,你在解决这个问题的...

    在一台服务器上用一个域名部署多个项目

    写在前面

    当你学一个新的技术的时候一直听别人讲,是学不会的。

    一定要每学一个东西就自己去动手做点什么。脑子里有一个自己的想法,然后不停的去百度,你在解决这个问题的时候,碰踩过的坑,遇到和遇到的过程都会让你对这个知识本身理解的更加透彻。

    所以一篇厉害的小作文并不能教会你什么,他只是告诉你一个方向,至于最后能不能做出来是需要你自己去不断尝试的。写好项目只有一个方法,多动手多百度

    如果对项目换自己域名不熟悉的同学可以参考:

    如何在nginx里面配置自己的域名 - AcWing

    大佬空间:

    个人空间 - AcWing

    在此感谢先行者们的分享,能让我们站在巨人的肩膀上更快的解决问题

    需要准备的东西

    硬件

    • 云服务器一台
    • 域名一个(已经完成备案的)

    软件

    • docker
    • nginx

    最好全程在root用户下完成

    下载docker

    y总讲过,这里不写

    下载nginx

    为了加速下载,还可以配置阿里云容器镜像加速,方法:自己百度

    apt-get update
    apt-get install nginx
    

    为什么要用nginx

    是因为你购买域名之后,会发现:DNS无法解析 IP地址加端口号这一格式的地址。

    计算机或者服务器的每一个服务或者进程都是对应一个端口号的。我们在一个服务器想部署多个项目,**本质上就是把不同的服务运行在不同的端口,然后用域名的不同二级域名去解析每一个项目。**但是DNS无法直接做到这一点,那么就需要一个,帮你把不同网址发来的请求去转发到不同端口上的一层代理。他就是nginx

    其实nginx的主要作用是把实现负载均衡把一个项目分布到不同服务器上,来降低服务器的负载压力。这里用它来部署多个项目,其实是杀鸡用牛刀

    用nginx部署y总项目前的一个天坑

    这个坑当时困扰了我好几周,大家一定要认真阅读

    首先nginx是默认运行在80端口的。

    但是回想y总的容器会发现,y总把80端口映射在了80端口,443端口,443端口映射在了443端口,那么会导致一个问题,如果你想在你服务器上配置一个nginx那么80端口已经被y总容器内的nginx占用。你在你的服务器上nginx就无法运行。

    解决方法1

    当然我一开始没有想到一个好的解决办法,只能退而求其次。就是将y总容器内部的nginx作为控制所有项目的大脑。即用容器内部的去转发所有的请求,配置你服务器上的多个项目。

    但这又带来了一个新的问题,就是其他项目的容器和y总项目的容器耦合性太高。一旦y总项目的容器重启或者停止,那么y总容器里的nginx服务也停止,这样你的其他的所有项目就都无法正确解析。

    本来这个问题就这样以一个将就的方式解决了。但是在之前的课设中,我需要同时展示y总的项目和我的Java项目和docker的作用,这就要求我必须将所有项目的容器解耦,于是我再次直面了这个问题。在看完的b站3个nginx的教程,和大量百度后。我开始研究如何改动y总项目内部nginx的配置文件

    解决方法二:将所有nginx配置写在一个nginx中

    这个方法也比较合理,但坏处就是你需要对每个项目的nginx配置文件进行大修改,同时项目也不方便迁移

    解决方法3:两层nginx代理

    实际上,每一个项目都有自己独立的nginx配置,想要做到真正解耦,方法3显然是更合理的

    改造y总容器

    如果对项目换自己域名不熟悉的同学可以参考:

    如何在nginx里面配置自己的域名 - AcWing

    大佬空间:

    个人空间 - AcWing

    在此感谢先行者们的分享,能让我们站在巨人的肩膀上更快的解决问题

    下面所有操作建议在服务器的root用户下运行

    1.解除容器对80端口的占用

    因为nginx是默认运行在80端口,不同的两个nginx服务不能同时监听80端口。所以要将容器内的nginx的80端口映射到主机的其他端口上。443端口同理。因为这里我并没有准备给所有的项目配置SSL。所以我只解除了80端口的占用,没有改443的。

    docker不删除容器改端口号的方法

    1. 先用docker ps -a查看并记住你要改容器的id

    2. 停止docker服务

      systemctl stop docker
      
    3. 编辑/var/lib/docker/containers/容器id/hostconfig.json,在里面就能修改端口映射

      这里的容器id就是以你第一步记住的id开头的一个长字符串

    4. 启动docker服务

      systemctl start docker
      
    5. 启动所有docker容器

      docker start `docker ps -aq`
      

    改完端口映射后一定要检查是否已经修改成功!

    2.进入y总容器,修改配置文件nginx.conf

    1.先进入y总容器,并切换为root用户

    2.修改配置文件

    vim /etc/nginx/nginx.conf
    

    如何修改

    我把一个详细的案例单独写在了下面这篇文章中

    nginx快速配置多个项目上手(含一个详细案例) - AcWing

    修改的关键

    现在思考2个问题:

    1. nginx的作用是什么
    2. 对于每个项目中的nginx(第二层的nginx)来说,第一层的nginx的地址是什么?

    nginx是一个请求代理服务,它会监听和拦截某个端口的所有请求,实现控制转发和重定向

    对所有第二层的nginx来说,第一层nginx的地址是localhost!!!

    明白了关键道理,一切就变的容易起来!!

    修改配置文件nginx.conf

    改完以后要记得重新加载配置文件

    sudo nginx -s reload
    

    就是这么简单!!

    配置服务器上的第一层nginx

    nginx快速配置多个项目上手(含一个详细案例) - AcWing

    看完案例,这一步就太简单了

    1.先在服务器的root用户下下载nginx

    为了加速下载,还可以配置阿里云容器镜像加速,方法:自己百度

    apt-get update
    apt-get install nginx
    

    2.配置nginx.conf

    进入nginx配置文件

    vim /etc/nginx/nginx.conf
    

    添加的配置

    要添加配置,其实就是添加2个server

        server {
              listen 80;
              server_name appxxx.acapp.acwing.com.cn #或者是你自己的域名
              location / {
        					#这里的127.0.0.1指本机ip地址
                   proxy_pass http://127.0.0.1:8000; #要代理转发的端口号
               }
    
          }
    	#项目二
        server {
              listen 80;
              server_name yyy.xxx.com; #你的第二个二级域名
              location / {
                   proxy_pass http://127.0.0.1:8080;
               }
    
          }
    

    就是这么简单

    第一层完整的nginx.conf

    user www-data;
    worker_processes auto;
    pid /run/nginx.pid;
    include /etc/nginx/modules-enabled/*.conf;
    
    events {
    	worker_connections 768;
    
    }
    
    http {
    	sendfile on;
    	tcp_nopush on;
    	tcp_nodelay on;
    	keepalive_timeout 65;
    	types_hash_max_size 2048;
    	include /etc/nginx/mime.types;
    	default_type application/octet-stream;
    	ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; 
    	ssl_prefer_server_ciphers on;
    	access_log /var/log/nginx/access.log;
    	error_log /var/log/nginx/error.log;
    	include /etc/nginx/conf.d/*.conf;
    	include /etc/nginx/sites-enabled/*;
    
        server {
              listen 80;
              server_name appxxx.acapp.acwing.com.cn #或者是你自己的域名
              location / {
        					#这里的127.0.0.1指本机ip地址
                   proxy_pass http://127.0.0.1:8000; #要代理转发的端口号
               }
    
          }
    	#项目二
        server {
              listen 80;
              server_name yyy.xxx.com; #你的第二个二级域名
              location / {
                   proxy_pass http://127.0.0.1:8080;
               }
    
          }
    }
    

    改完以后要记得重新加载配置文件

    sudo nginx -s reload
    

    创作不宜,如要转载,请私聊作者个人空间 - AcWing

    完结撒花~
    {
    listen 80;
    server_name yyy.xxx.com; #你的第二个二级域名
    location / {
    proxy_pass http://127.0.0.1:8080;
    }

      }
    

    }

    
    
    
    改完以后要记得重新加载配置文件
    
    ```bash
    sudo nginx -s reload
    

    创作不宜,如要转载,请私聊作者个人空间 - AcWing

    完结撒花~

    展开全文
  • 但如果你使用的是虚拟主机,你可能会兴趣知道你这服务器上绑定了多少个域名。因为如果用户数过多,主机的性能可能有所降低。这里介绍个提供IP反查网站服务的网站:You Get Signal。如下图所示,在表单里输入要...

    知道域名查询IP是很容易的,但反过来呢?如何查询一个IP上有哪些域名?如果你使用的是独立IP,你不会为你的IP绑定了多少个域名而烦恼。但如果你使用的是虚拟主机,你可能会有兴趣知道你这台服务器上绑定了多少个域名。因为如果用户数过多,主机的性能可能有所降低。这里介绍一个提供IP反查网站服务的网站:You Get Signal。

    如下图所示,在表单里输入要查询的域名或IP,即可反查域名。

    35095ba78eb9f5557cc75e0766b04404.png

    另外一个同类的服务My IP Neighbors稍微麻烦一点,因为需要输入验证码。

    You Get Signal反查后给出的域名都是以直接链接的形式给出的,很方便点击查看这些网站,而My IP Neighbors是通过js在原页面打开的。显然前者更好一些。

    另外,You Get Signal还会将可能会被搜索引擎认为是spam的域名以红色标记出来。

    如下图,在My IP Neighbors上查询kenengba.com能查到292个域名, 而在You Get Signal能查询到271个域名。

    fdaa94799e3ba0c33d089fc63095c147.png

    为什么两者的数据不一样呢?

    因为这两个服务的原理是:一个一个地从搜索引擎收集域名的IP数据,然后通过IP进行分类存储域名信息,最后在查询时调用这些可能已经过时的数据。

    因此,你可能在查询结果里看到一些已经不在此主机上的域名,同时可能不能看到一些新绑定的域名。因此IP反查域名的数据不是完全准确的。

    另外需要注意的问题是,并不是说查询到多少域名,服务器上就有多少个用户,因为每个用户可绑定的域名可能不止一个。

    这样的服务有什么用呢?

    1、可以看到自己的IP邻居。例如我可以通过他们查询到CPH上其它博客。

    2、如果你准备购买虚拟主机,主机商说每人只能绑定2个域名,一台服务器最多放100个用户,而你反查能查到300个域名,这时你就应该好好思考一下了。

    展开全文
  • 但是在域名服务商那里,你可以把服务器群里面的多个提供相同服务的服务器IP设置一个域名可以轮询。但是同一时刻,个域名只能解析出个IP供你使用。这些IP可以轮流着被解析。 这些IP其实对应的服务器提供的是同...
    1、也就是说通常情况下一个域名同一时刻只能对应一个IP地址。
    但是在域名服务商那里,你可以把服务器群里面的多个提供相同服务的服务器IP设置一个域名可以轮询。但是同一时刻,一个域名只能解析出一个IP供你使用。这些IP可以轮流着被解析。
    这些IP其实对应的服务器提供的是同一种的服务。
    
    2、一个IP可以绑定无数个域名,这个没有限制。
    
    
    
    
    
     
    Tcp/Ip有3次握手:第一次握手:客户端向服务器端发送SYN包(syn=j),进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到SYN包,确认SYN,此时syn=j+1,同时发送一个SYN包(syn=k)即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到SYN+ACK包,向服务器发送ACK确认包,此时客户端和服务器端均进入ESTABLISHED状态。
    其中有一个半连接状态:服务器维护一个半连接队列,该队列卫每个客户端SYN包开设一个条目,标明服务器已经接到SYN包,并向客户端发出确认,这些条目表示的连接处于SYN_RECV状态,得到客户端的确认后进入ESTABLISHED状态。
    展开全文
  • 一台服务器支持多个域名和站点

    万次阅读 2018-03-28 15:04:01
    最近数次遇到这种情况:硬件资源有限,但有些开发配置要求比较...需求只有一台服务器,一IP;服务器上应用运行在不同的端口。例如:127.0.0.1:4000 运行着一node.js写的博客应用127.0.0.1:3009 运行着一...
  • 一个服务器可以有多少ip地址

    千次阅读 2021-08-11 12:29:17
    一个服务器可以有多少ip地址 内容精选换换华为云帮助中心,为用户提供产品简介、价格说明、购买指南、用户指南、API参考、最佳实践、常见问题、视频帮助等技术文档,帮助您快速上手使用华为云服务。会话保持,指...
  • 一台物理机器部署多docker

    千次阅读 2021-08-02 02:01:57
    部署多docker两种方式,种是让容器映射端口到宿主机,然后可以直接从外部访问到该端口,种是利用nginx做转发,容器端口不对外暴露。端口映射方式image.png这种是容器在建立的时候,使用-p参数来将容器的端口...
  • 用图示方式简单教你如何多个域名共用同个IP地址的80端口。
  • 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的种服务。 IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。 域名解析就是域名到IP地址的...
  • 如何将多个域名指向个网址

    千次阅读 2020-09-03 16:11:08
    如何将多个域名指向同一个域名地址呢?无论访问B.com,还是C.com,都是A.com的内容。 正文 步骤、修改CNAME 登陆公司的域名管理后台(如果不清楚可以问网管或者服务器运维相关人员),将B.com和C.com的cname...
  • 后续流程不涉及)DNS对多域名的解析随机性DNS 域名解析负载均衡缺点:可能方案方案、dns解析层面控制DNS解析结果1.1 通过内置DNS服务器控制IP解析(伪造DNS)1.2、让备机nginx的状态能够影响DNS服务器解析方案二...
  • 如何实现同个IP绑定多个域名

    千次阅读 2019-07-30 14:52:27
    我们可以利用Apache实现:同个IP绑定多个域名。假设你云服务器IP地址为 :12.34.56.78;假设你需要使用的多个域名为 :www.example.com;www.test.com;www.test.cn;about.test.cn。那在将四个域名同时指向12.34....
  • 现在不论是个人还是企业,只要在网上开展业务都需要自己的网站或者APP客户端。而现在随着虚拟主机被淘汰,独立...影响网站访问速度的一个重要因素是服务器节点所在地域。也就是说如果服务器节点地域选的离你目标客户
  • 如果是普通的域名,要十块钱,但是想要一个好的域名,就很多钱了。没有底,一般有几百万,千万。域名注册讲究域名外观,自然贵,价格也不固定。而一般的域名服务商定价是固定的,大概十块钱,主要是被人炒作...
  • constantRouterMap }) public inde.html 里面 head加上 vue.config.js 里面的 publicPath: ‘/admin/’ nginx里面配置 需要注意的是一般情况下:try_files 我们只配置 $uri $uri/ /index.html这几个但是同一个域名下...
  • 虚拟主机空间1G,博客用不了那么多空间,而自己又屯有几个域名,所以就个虚拟主机上搭建多个网站的想法。查阅资料历经种种失败,终于折腾出来了还是。下面把最后的可以实现的方法记录下来。其他方案不做介绍,...
  • 2个域名2个网站共用个空间的方法

    千次阅读 2016-09-02 22:06:38
    很多空间支持多域名绑定,但是不支持子目录绑定,可以考虑如下种方法来实现个空间放多个域名站点的方法,只是其他站点都需要在个目录下大开。 方法:用js跳转 在空间上分别绑定www.aaa.com和...
  • 在DNS系统中有一个比较重要的的资源类型叫做主机记录也称为A记录,A记录是用于名称解析的重要记录,它将特定的主机名映射到对应主机的IP地址上。如果你有一个自己的域名,那么要想别人能访问到你的网站,你需要到...
  • 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的种服务。 IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址。域名解析就是域名到IP地址的转换...
  • 先搭好所需设备(一台路由器,俩交换机和4台电脑外加一Client和俩服务器)并开机 因为图中广播域,所以接下来对其进行IP地址规划 左边为192.168.1.0/24 右边为192.168.2.0/24 第二步 双击路由器...
  • 域名服务器可以划分为哪四种

    千次阅读 2021-08-04 09:07:19
    域名服务器可以划分为主域名服务器、辅助域名服务器、缓存域名服务器和转发域名服务器四种。主域名服务器的数据可以修改,辅助域名服务器的数据不可以修改,缓存域名服务器提供的信息都是间接信息,转发域名服务器...
  • IP、主机名和域名

    万次阅读 2016-09-21 10:13:32
    在网络通信中,每IP可唯一标识一台主机,在多网卡或者路由器等的情况下,每主机可以有IP,通过哪个IP都可以找到该主机;但是IP地址是一32位的数字,为了便于记忆,我们通常把按每字节划分,然后用10进制...
  • 互联网、Internet、因特网、国际互联网是同一个概念,指的是由那些使用共用语言互相通信的计算机连接而成的全球网络(百度百科)。 WWW是World Wide Web的简写,可以简称为Web,是互联网(Internet)上的项常用...
  • 实现一个域名对应多个IP地址和DNS优缺点详解!   1.DNS定义: DNS(Domain Name System)是因特网的项服务,它作为域名和IP地址相互映射的个分布式数据库,能够使人更方便的访问互联网。 2.DNS作用: (1...
  • 问题需求: 公司闲置的ThinkPadStation P910 , 一直在角落里面放着 , 都落灰了 , 正好最近很多大的文件需要上传 , 阿里云 , 七牛云什么的存储什么的都需要花钱 , 两服务器又个个都是... 3: 一个动态的DN...
  • 终于人把域名和DNS服务器给写明白了

    万次阅读 多人点赞 2020-05-10 16:39:17
    终于人把域名和DNS服务器给写明白了
  • 3 月 15 日,历史上的今天,格状编码调制的发明者 Gottfried Ungerboeck 出生;第一个互联网注册域名诞生;Adobe 并购 Aldus;微软停止使用 Messenger,转而使用 Skype。
  • 很多购买过的ssl证书的朋友想问,我一个域名可以用多个ssl证书吗?其实这是可以的,比如说个企业类型的网站,需要增加访客对企业的信任程度,他们购买了个EV型的证书,这样用户访问时,浏览器的地址栏会变成绿色...
  • 我们都知道,TCP/IP中使用的是IP地址和端口号来确定网络上某一台主机上的某一程序,不免疑问,为什么不用域名来直接进行通信呢? 因为IP地址是固定长度的,IPv4是32位,IPv6是128位,而域名是变长的,不...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 102,127
精华内容 40,850
关键字:

一台主机可以有几个域名