专栏首页令仔很忙Nginx虚拟主机配置

Nginx虚拟主机配置

什么是虚拟主机?


虚拟主机就是使用特殊的软硬件技术,把一台计算机主机分成多台“虚拟”的主机,每一台虚拟主机都具有独立的域名和IP地址(或共享的IP地址),具有完整的Internet服务器功能。在同一台硬件、同一个操作系统上,运行着为多个用户打开的不同的服务器程序,互不干扰;而各个用户拥有自己的一部分系统资源(IP地址、文件存储空间、内存、CPU时间等)。 其实说白了就是有一套大房子,然后给这个房子加上隔断,分成几个小屋,然后每个小屋都租赁给一个商户,每个商户之间都是相互不受影响的,相互独立的。

Nginx实现虚拟主机的三种方式


在说三种方式之前,简单的介绍下nginx.conf里面的配置的详情。

Nginx配置段

// 全局区
worker_processes 1; // 有1个工作的子进程,可以自行修改,但太大无益,因为要争夺CPU,一般设置为 CPU数*核数

Event {
// 一般是配置nginx连接的特性
// 如1个worker能同时允许多少连接
 worker_connections  1024; // 这是指 一个子进程最大允许连1024个连接
}

http {  //这是配置http服务器的主要段
     Server1 { // 这是虚拟主机段

            Location {  //定位,把特殊的路径或文件再次定位 ,如image目录单独处理
            }             /// 如.php单独处理

     }

     Server2 {
     }
}

基于域名

需要修改下hosts文件,加上IP和域名的对应关系,要不然是访问不到的。

vim /etc/hosts
192.168.22.33 www.lingzai.com
192.168.22.33 www.xiaowang.com
 server {
        listen 80;
        server_name www.lingzai.com;
        localtion /{
                root html-ling;
                index index.html;
        }
    server {
        listen 80;
        server_name www.xiaowang.com;
        location /{
            root html-wang;
            index index.html;
        }

然后访问相应的域名www.xiaowang.com或者www.lingzai.com就会出现相应的index界面。

基于IP

给每一个server配置一个IP,直接访问不同的IP就会访问不同的虚拟主机。

server{
        listen  80;
        server_name 59.46.80.12;
        location /{
           root  html-wang;
           index index.html;
        }

}
server{
     listen  80;
     server_name 59.46.80.11;
     location /{
        root  html-ling;
        index index.html;
     }

 }

注意:配置完成后,需要reload配置才会生效:

reload nginx配置文件,命令:/nginx/bin/nginx -s reload

基于端口

当输入不同的端口号的时候,进入不同的虚拟主机。配置如下:

server{
        listen  2022;
        server_name 192.168.22.33;
        location /{
           root  html-wang;
           index index.html;
        }

    }
    server{
        listen  2033;
        server_name 192.168.22.33;
        location /{
           root  html-ling;
           index index.html;
        }

    }

在浏览器中输入192.168.22.33:2033或者2022就会进入不同的虚拟主机。

通过以上任意一种方式你就可以在一台服务器上发布多个网站,网站之间的运行互相独立不受影响。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 学生信息管理系统——配置windows防火墙允许访问SQL Server 2008服务器

       我在做学生管理系统的时候,Windows防火墙一直是关着的,在另一台电脑上运行的学生管理系统的时候可以顺利的登录,但是当把Windows防火墙打开之后,再...

    令仔很忙
  • 设计模式六大原则——里氏替换原则(LSP)

           里氏替换原则(LSP,Liskov Substitution Principle)是关于继承机制的原则,是实现开放封闭原则的具体规范,违反了里氏替...

    令仔很忙
  • AJAX--XMLHttpRequest五步使用法

          多数Web应用程序都使用请求/响应模型从服务器上获得完整的HTML页面。常常是点击一个按钮,等待服务器相应,在点击另一个按钮,然后在等待,这样一个反...

    令仔很忙
  • 边缘计算将如何改变制造业?

    制造业向智能化升级转型,生产设备的复杂程度越来越高,大量的数据可能只有部分是关键或者有意义的。所以很多场合需要边缘计算系统对数据进行处理,然后再将每日报告发送到...

    CloudBest
  • finecms设置伪静态后分享到微信不能访问怎么处理

      finecms设置伪静态后分享到微信不能访问,分享的链接自动增加了一串参数,类似这样的***.html?from=singlemessage&isappin...

    ytkah
  • 全球计算机科学家排名更新,在 CCF-GAIR 可以见到 top10 中国学者中的 6 位

    AI科技评论按:学术信息网站 guide2research 近日更新了计算机科学与电子领域研究者的 top 1000 排名清单。guide2research 根...

    AI科技评论
  • LNMP环境配置SSL证书最简单教程

    用户1700948
  • 全球计算机科学家排名更新,在 CCF-GAIR 可以见到 top10 中国学者中的 6 位

    AI研习社按:学术信息网站 guide2research 近日更新了计算机科学与电子领域研究者的 top 1000 排名清单。guide2research 根据...

    AI研习社
  • python + selenium + PhantomJS 获取腾讯应用宝APP评论

    PhantomJS PhantomJS 是一个基于WebKit的服务器端JavaScript API,它无需浏览器的支持即可实现对Web的支持,且原生支持各种W...

    机器学习AI算法工程
  • LeetCode 1389. 按既定顺序创建目标数组

    目标数组 target 最初为空。 按从左到右的顺序依次读取 nums[i] 和 index[i],在 target 数组中的下标 index[i] 处插入值...

    freesan44

扫码关注云+社区

领取腾讯云代金券