nginx--虚拟主机 server、状态模式

本文涉及的产品
云解析 DNS,旗舰版 1个月
云解析DNS,个人版 1个月
全局流量管理 GTM,标准版 1个月
简介: nginx--虚拟主机 server、状态模式
+关注继续查看

前戏


假设我们开发了两个网站,一个为 www.zouzou.com,一个为 www.balabala.com。如果每台服务器只能运行一个网站的话,那我们就需要买两台服务器,会造成资源的浪费。

虚拟主机就是将一台服务器分割成多个“虚拟服务器”,每个站点使用各自的磁盘空间,这样。我们就可以在一台服务器上来使用虚拟主机来部署网站。

虚拟主机就是在 web 服务里的一个独立的网站站点,这个站点对应独立的域名(IP),具有独立的程序和资源目录,可以独立的对外提供服务。这个独立的站点部署是在 nginx.conf 中使用 server { } 代码块来表示一个虚拟主机,Nginx 支持多个 server { } 标签,支持多个虚拟站点。

nginx 支持三种虚拟主机的类型

  • 基于域名的虚拟主机:通过不同的域名区分不同的虚拟主机,是企业应用最广的虚拟主机。
  • 基于端口的虚拟主机:通过不同的端口来区分不同的虚拟主机,一般用作企业内部网站,不对外直接提供服务的后台
  • 基于 IP 的虚拟主机:通过不同的 IP 区分不同的虚拟主机,此类比较少见,一般业务需要多 IP 的常见都会在负载均衡中绑定 VIP


基于域名的虚拟主机配置


1.修改 nginx 底下的 conf/nginx.conf ,修改信息如下

server {
            listen       80;
            server_name  www.zouzou.com;
            location / {
                # 指明网页根目录在  /data/zouzou 文件夹下
                root   /data/zouzou;
                index  index.html index.htm;
            }
            }
server {
            listen       80;
            server_name  www.balabala.com;
            location / {
                # 指明网页根目录在 /data/balabala 文件夹下
                root   /data/balabala;
                index  index.html index.htm;
            }
            }

我将多余的数据删掉了

image 我自己的nginx.conf文件

改为之后加载配置文件

nginx -t   # 检测语法,在sbin下执行
nginx -s reload   # 平滑重启 ,在sbin下执行

image

3.准备不同的虚拟主机的资料

mkdir -p /data/{zouzou,balabala}

我的目录如下。两个 index.html 文件里写了不同的内容

[root@HH balabala]# tree /data
/data
├── balabala
│   └── index.html
└── zouzou
    └── index.html

4.更改本地的 hosts 文件

因为我们的两个网址 www.zouzou.com 和 www.balabala.com 是不存在的,写入到本地 dns 解析文件,由于我是在 windows 中通过浏览器访问,应该在 windows 的 hosts 文件中添加记录 hosts 文件就是一个本地 dns (就是将域名转化成 ip 地址)强制解析的文件。

windows 的 hosts 文件就在这里:C:\Windows\System32\drivers\etc\hosts ,写入如下信息

服务器的ip   www.zouzou.com
服务器的ip   www.balabala.com

配置好之后,浏览器就会优先使用本地的 DNS 解析。

image

image


nginx 的状态模式


nginx 与 php-fpm一样内建了一个状态页,对于想了解 nginx 的状态以及监控 nginx 非常有帮助。为了后续的 zabbix监控,我们需要先了解一下 nginx 的状态页。

Nginx 软件在编译时有一个 with-http_stub_status_module 模块,这个模块功能是记录 Nginx 的基本访问状态信息,让使用者了解 Nginx 的工作状态。

要想使用状态模块,在编译时必须增加 --with-http_stub_status_module参数。

查看是否安装了 status 模块(我在编译安装的时候已经安装了)

[root@HH ~]# /opt/nginx1-16/sbin//nginx -V
nginx version: nginx/1.16.1
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/opt/nginx1-16/ --with-http_ssl_module --with-http_stub_status_module
[root@HH ~]#
--with-http_stub_status_module 就是status模块

1.在配置文件中,添加一个参数即可

location /status {
     stub_status on;
}

image

  加载配置文件

nginx -t   # 检测语法,在sbin下执行
nginx -s reload   # 平滑重启 ,在sbin下执行

访问:www.zouzou.com/status 你会看到如下信息

image

 各意义如下

image


相关文章
|
1月前
|
搜索推荐 应用服务中间件 nginx
Nginx系列教程(05) - 虚拟主机配置
Nginx系列教程(05) - 虚拟主机配置
56 0
|
2月前
|
搜索推荐 应用服务中间件 nginx
67分布式电商项目 - nginx基于端口配置虚拟主机
67分布式电商项目 - nginx基于端口配置虚拟主机
16 0
|
2月前
|
应用服务中间件 nginx Windows
66分布式电商项目 - nginx基于域名配置虚拟主机
66分布式电商项目 - nginx基于域名配置虚拟主机
25 0
|
2月前
|
应用服务中间件 nginx
65分布式电商项目 - nginx配置虚拟主机概述
65分布式电商项目 - nginx配置虚拟主机概述
31 0
|
7月前
|
应用服务中间件 nginx
Nginx基于域名\端口的虚拟主机
Nginx基于域名\端口的虚拟主机
|
10月前
|
存储 缓存 负载均衡
配置Nginx虚拟主机(二)
⭐本文介绍⭐ 在企业信息化应用环境中,安全性不仅取决于硬件防护设备,系统加固、访问控制等基本措施,而且如何减少故障中断时间,提高存储及北方的完善性也是确保企业信息安全的重要措施。本文将进一步学习服务器缓存加速、高可用/负载均衡群集、服务器集中监控等高级安全应用。后续课程将采用最小化安装的CentOS7.3系统,安装系统时勾选"开发工具"选项,以此为基础搭建实现环境。
配置Nginx虚拟主机(二)
|
10月前
|
存储 缓存 负载均衡
配置Nginx虚拟主机(一)
⭐本文介绍⭐ 在企业信息化应用环境中,安全性不仅取决于硬件防护设备,系统加固、访问控制等基本措施,而且如何减少故障中断时间,提高存储及北方的完善性也是确保企业信息安全的重要措施。本文将进一步学习服务器缓存加速、高可用/负载均衡群集、服务器集中监控等高级安全应用。后续课程将采用最小化安装的CentOS7.3系统,安装系统时勾选"开发工具"选项,以此为基础搭建实现环境。
配置Nginx虚拟主机(一)
|
11月前
|
Linux 应用服务中间件 nginx
nginx系列-----虚拟主机(多IP地址)
虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供www服务,这样就可以实现一台主机对外提供多个web服务,每个虚拟主机之间是独立的,互不影响的。
159 0
nginx系列-----虚拟主机(多IP地址)
|
12月前
|
网络协议 应用服务中间件 nginx
Nginx实战(一) 虚拟主机
Nginx实战(一) 虚拟主机
105 0
|
域名解析 网络协议 应用服务中间件
手把手教你配置【Nginx的虚拟主机】
一、虚拟主机的概念 1.1 什么是虚拟主机 虚拟主机,就是把一台物理服务器划分成多个 “虚拟” 的服务器,这样我们的一台物理服务器就可以当做多个服务器来使用,从而可以配置多个网站。Nginx 提供虚拟主机的功能,就是为了让我们不需要安装多个 Nginx,就可以运行多个域名不同的网站。
746 0
相关产品
云迁移中心
推荐文章
更多