Ubuntu Linux 中虚拟主机的配置 - 搭配 Nginx

作者: 摆码王子 | 来源:发表于2018-04-16 12:56 被阅读23次

虚拟主机,正如其名,就是将一台服务器划分为多个虚拟的主机,可以将每个域名分配给不同的虚拟主机,这样可以充分利用了域名资源和硬件资源。这次我们采用 Nginx 实现虚拟主机的配置。

Nginx 是一款 free、开源的高性能 HTTP 服务器和反向代理服务器,同时可用作 IMAP、POP3、SMTP 服务器,它经常被用作 HTTP 服务器进行 Web 应用的部署使用,另外,Nginx 还经常以反向代理服务器的身份实现负载均衡。

使用 Nginx 配置虚拟主机只需编辑 Nginx 安装目录下 conf/nginx.conf 即可,增加一个虚拟主机只需要在配置文件中添加一个 server 节点,就像这样:


server {

    listen 80;

    server_name test1.example.com;

    location / {

        index index.html;

        root /home/www/test1/;

    }

}

server {

    listen 80;

    server_name test2.example.com;

    location / {

        index index.html;

        root /home/www/test2/;

    }

}

listen 为监听的端口,本例中监听 80 端口

server_name 即指定的虚拟主机名

location 只 Nginx 代理的相对 URL 范围

index 指主页的文件名

root 为网站根目录在系统中的实际位置

location / 表示匹配这个主机名下的所有请求,server_name 的值可以为 *.example.com 这种形式,即匹配所有以 example.com 结尾的主机名,亦或 test.*,即所有以 test 开头的主机名,还可以用正则表达式的形式,比如 ~^test\d+\.example\.com$,如果使用正则表达式,最前面要加上 ~ 这个符号。

以上两个虚拟主机实现了将对不同主机名的请求指向不同的物理目录,下面介绍如何用虚拟主机实现区分端口,即将不同主机名的请求分发到不同端口上

和上面的配置写法类似:


server {

    listen 80;

    server_name demo1.example.com;

    location / {

        proxy_pass http://127.0.0.1:8080;

    }

}

server {

    listen 80;

    server_name demo2.example.com;

    location / {

        proxy_pass http://127.0.0.1:8081;

    }

}

proxy_pass 表示将请求转发到某个 URL,这样便可以实现虚拟主机名和端口的映射了。如果采用一台物理机部署多个 Tocmat 服务实例则可以采用这种方式,这样就避免了暴露多个端口的问题。

个人博客同步更新,获取更多技术分享请关注:郑保乐的博客

相关文章

  • Ubuntu Linux 中虚拟主机的配置 - 搭配 Nginx

    虚拟主机,正如其名,就是将一台服务器划分为多个虚拟的主机,可以将每个域名分配给不同的虚拟主机,这样可以充分利用了域...

  • Nginx虚拟主机及加密站点

    环境准备 本实验适用上篇文章中所部署好nginx的Linux主机 nginx配置虚拟主机 打开nginx主配置文件...

  • Nginx location

    上一篇 Nginx 虚拟主机 Nginx location  在 nginx 的配置文件中,经常可以看到虚拟主机配...

  • nginx

    nginx的配置、虚拟主机、负载均衡和反向代理一nginx的配置、虚拟主机、负载均衡和反向代理二nginx的配置、...

  • 02_nginx虚拟主机、日志管理

    虚拟主机 Nginx配置段 conf/nginx.conf 基于域名的虚拟主机在http{}中添加 上面的root...

  • Nginx 虚拟主机配置和日志管理 [2]

    一、nginx虚拟主机配置 Nginx虚拟主机对应的文件实体就是/usr/local/nginx/nginx.co...

  • Nginx——虚拟主机配置

    基于域名的虚拟主机 基于端口的虚拟主机 基于IP的虚拟主机nginx的主配置文件/etc/nginx/nginx....

  • 初探Nginx

    Linux Ubuntu14.04在线安装配置Nginx 1、Nginx简介 Nginx是一个非常轻量级的HTTP...

  • Nginx 常用配置

    1. Nginx 配置虚拟主机 1.1 基于 IP 的虚拟主机 修改配置文件 nginx.conf 重启服务 测试...

  • Nginx

    安装Nginx 配置虚拟主机

网友评论

    本文标题:Ubuntu Linux 中虚拟主机的配置 - 搭配 Nginx

    本文链接:https://www.haomeiwen.com/subject/iyzskftx.html