nginx [engine x]是 Igor Sysoev 编写的一个 HTTP 和反向代理服务器,另外它也可以

作为邮件代理服务器。 它已经在众多流量很大的俄罗斯网站上使用了很长时间,这些网站
包括 Yandex、Mail.Ru、VKontakte,以及 Rambler

据 Netcraft 统计,在 2012 年 8 月份,世界上最繁忙的网站中有 11.48%使用 Nginx 作
为其服务器或者代理服务器。目前互联网主流公司 360、百度、新浪、腾讯、阿里等都在使
用 nginx 作为自己的 web 服务器。

下面我就来为大家介绍配置虚拟主机的这两种形式。

基本的框架配置如下:

给予IP

nginx配置虚拟主机——端口区分

我们首先看一下nginx的配置文件所在的位置,如下图所示。 
 
我们使用vim nginx.conf命令打开nginx.conf配置文件,如下图所示。 

接着往下看配置文件,如下图所示。 

下面我举例使用端口来区分虚拟主机,为了更加方便地操作nginx.conf文件,我们可以使用Nodepad++来连接Linux服务器并对文件进行编辑,想必有些同学还不知道,所以我特地写了一篇博客,大家可以参考淘淘商城系列——使用Nodepad++来编辑我们服务器的配置文件这篇博客进行学习哟!我们打开nginx.conf文件,复制一份server节点配置,修改端口为81,root目录指定一个新的目录html81。如下图所示(为了简洁,把注释的内容都删掉了)。 

html81在nginx目录下是没有的,所以我们复制一份html目录并命名为html81,如下图所示。 
 
为了区分出我们访问的nginx首页,我们进入html81目录,修改index.html,将<h1>Welcome to nginx!</h1>修改为<h1>Welcome to nginx81!</h1>,如下图所示。 

配置文件修改了之后,又要想让其生效,应该怎么办呢?我们需要重启服务或者是重新加载配置文件,如下图所示。 
 
此时,我们访问81端口就会看到如下图所示界面,可以看见访问到的是81端口的欢迎页。说明我们配置的虚拟主机起作用了。 

nginx配置虚拟主机——域名区分

上面学习了使用端口号来区分不同的网站,下面我们学习如何通过域名来区分不同的网址。 
我们平时访问淘宝时只需要在浏览器地址栏中输入taobao.com便可以访问淘宝首页,这个”taobao.com”便是域名,而且”taobao.com”是一级域名,我们买域名买的便是一级域名,而”www.taobao.com”是二级域名。如果我们想在浏览器地址栏中输入域名访问我们自己的网站的话,可有两个途径,第一个途径是买一个属于自己的域名,访问这个域名需要经过DNS服务器(把域名解析为ip地址,保存的就是域名和ip之间的映射关系),DNS服务器就是为了将访问的域名对应到相应的IP上,所以最终还是通过IP实际访问网站的(使用这个途径,别的人都可以访问到你的网站)。注意,一个域名对应一个ip地址,一个ip地址可以被多个域名绑定。第二个途径是配置本地的hosts文件,hosts文件在windows系统中的目录如下图所示。 

我们可以在hosts文件当中配置IP与域名的对应关系,配置了hosts文件后,我们在浏览器地址栏中输入配置在hosts文件中的域名后将不再经过DNS服务器,而是直接访问hosts文件中配置的IP地址,比如我们把nginx所在的虚拟机的IP配置到hosts文件中并且配两个域名(端口一样,就靠域名来区分不同的网站)如下图所示。 

下面我们到nginx的配置文件中再添加两个虚拟主机的配置,如下图所示,可以看到端口号都是默认的80,只是域名不一样而已,为了区分不同的网站,我们分别新建一个html目录并命名为html-test和html-test1。 

html-test和html-test1在nginx目录下默认是没有的,我们分别复制html目录并命名为html-test和html-test1,如下图所示。 
 
为了在nginx首页区分出不同的网站,我们分别进入html-test和html-test1目录下,修改index.html文件,如下图所示。 


配置文件修改了之后,又要想让其生效,应该怎么办呢?我们需要重启服务或者是重新加载配置文件,如下图所示。 
 
然后,我们在浏览器地址栏中输入www.test.com,如下图所示,可以看到这时访问的是我们的nginx的首页而且是我们指定的nginx的首页。 

我们再试试在浏览器地址栏中输入www.test1.com,如下图所示,可以看到这时访问的是html-test1目录下的nginx首页。 

 
 

nginx虚拟主机搭建的更多相关文章

  1. windows 下nginx 虚拟主机搭建

    需要在 nginx.conf里面引入刚才配置的那个文件   第一步 加东西 http的节点里面加上 一定要注意的是:必须以  ;  结尾 include D:/phpen/nginx-1.3.6/co ...

  2. 烂泥:使用nginx利用虚拟主机搭建WordPress博客

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近开始打算学习nginx web服务器,既然是学习还是以实用为目的的.我们在此以搭建WordPress博客为例. 搭建WordPress博客,我们需要 ...

  3. Nginx 虚拟主机 VirtualHost 配置

    Nginx 是一个轻量级高性能的 Web 服务器, 并发处理能力强, 对资源消耗小, 无论是静态服务器还是小网站, Nginx 表现更加出色, 作为 Apache 的补充和替代使用率越来越高. 我在& ...

  4. nginx虚拟主机配置

    nginx虚拟主机配置   虚拟主机的概念虚拟主机,就是把一台物理服务器划分成多个"虚拟"的服务器,每一个虚拟主机都可以有独立的域名和独立的目录nginx虚拟主机的配置nginx的 ...

  5. Apache与Nginx虚拟主机设置(多域名和多端口的区别)

    为了方便管理虚拟主机,应该尽量少修改主配置文件http.conf或者nginx.conf,大部分修改变更都在虚拟主机片配置文件httpd- vhost.conf或者vhost.conf中完成,这样有利 ...

  6. javaweb学习总结十七(web应用组织结构、web.xml作用以及配置虚拟主机搭建网站)

    一:web应用组织结构 1:web应用组成结构 2:安装web组成机构手动创建一个web应用程序目录 a:在webapps下创建目录web b:在web目录下创建html.jsp.css.js.WEB ...

  7. Nginx高性能服务器安装、配置、运维 (5) —— Nginx虚拟主机配置

    六.Nginx虚拟主机配置 建立基于域名的虚拟主机: (1)建立基于域名的虚拟主机配置文件(以abc.com为例): (2)更改虚拟主机配置文件: 更改配置如下(更改部分即可): server { l ...

  8. Nginx教程(二) Nginx虚拟主机配置

    Nginx教程(二) Nginx虚拟主机配置 1 虚拟主机管理 1.1 Nginx管理虚拟主机 虚拟主机使用的是特殊的软硬件技术,它把一台运行在因特网上的服务器主机分成一台台“虚拟”的主机,每台虚拟主 ...

  9. 配置Nginx虚拟主机

    实验环境 一台最小化安装的CentOS 7.3虚拟机 配置基本环境 1. 安装nginx yum install -y epel-* yum isntall -y nginx vim 2. 建立虚机主 ...

随机推荐

  1. npm 包下载很慢的解决办法

    原因: 国内访问外网都很慢,甚至不能访问!安装Node时自带的npm地址默认是:http://registry.npmjs.org  三种方法: 1.通过config命令 npm config set ...

  2. HashMap源码详解与对比

    前几天工作忙得焦头烂额时,同事问了一下关于Map的特性,刹那间懵了一下,紧接着就想起来了一些关于Map的一些知识,因为只要涉及到Collection集合类时,就会谈及Map类,因此理解好Map相关的知 ...

  3. jQuery中的节点操作(一)

    html代码如下 <p>Dom操作练习</p> jQuery插入节点 $("p").append("武汉php"); //向每个匹配的元 ...

  4. jquery的html()、text()、val()的区别和用法

    1.html() html()[无参]的使用方法是获取某元素内部的HTML代码,包括各种标签: 例:句1:<p>不知道大家高考的理综试卷里有没有关于科学家及其成就的选择题</p> ...

  5. 跨平台图表控件TeeChart使用教程:将图表数据导出为XML格式

    在开发者使用TeeChart进行开发的过程中,不管是在设计时或者运行时都可以使用的图表导出对话框将图表数据轻易地导出为XML格式: TeeChart最新版那下载地址 上图为TeeChart导出对话框的 ...

  6. C++ 0x

  7. ASP.NET MVC 音乐商店 - 2.控制器

    在典型的 Web 应用中,用户请求的 URL 地址通常映射到保存在网站中的文件上,例如,当用户请求 /Products.aspx 的时候,或者 /Products.php 的时候,很可能是在通过处理 ...

  8. c++ 处理utf-8字符串

    c++的字符串中的每一个元素都是一个字节.所以在装入utf8字符串的时候,其实是按照一定的规则编码的. 字符的8位中 如果0开头 则自己就是一个单位. 1字节 0xxxxxxx  2字节 110xxx ...

  9. .net 使用Memcached

    1.创建个人MemcachedHelper类 /// <summary> /// 页 面 名:缓存管理类<br/> /// 说 明:设置.获取.移除Cache<br/&g ...

  10. HCNA配置浮动静态路由

    1.拓扑图 2.配置IP R1 Please press enter to start cmd line! ############ <Huawei> Dec ::-: Huawei %% ...