Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Nginx基于IP,端口,域名配置虚拟主机

Nginx基于IP,端口,域名配置虚拟主机

作者头像
Leshami
发布于 2018-08-13 03:53:11
发布于 2018-08-13 03:53:11
3.9K00
代码可运行
举报
文章被收录于专栏:乐沙弥的世界乐沙弥的世界
运行总次数:0
代码可运行

Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。Nginx同Apache httpd一样,Nginx也提供基于IP,基于端口以及域名方式的形式来配置虚拟主机

一、什么是虚拟主机

虚拟主机是使用特殊的软硬件技术,把一台真实的物理服务器主机分割成多个逻辑存储单元。每个逻辑单元都没有物理实体,但是每一个逻辑单元都能像真实的物理主机一样在网络上工作,具有单独的IP地址(或共享的IP地址)、独立的域名以及完整的Internet服务器(支持WWW、FTP、E-mail等)功能。 虚拟主机的关键技术在于,即使在同一台硬件、同一个操作系统上,运行着为多个用户打开的不同的服务器程式,也互不干扰。而各个用户拥有自己的一部分系统资源(IP地址、文档存储空间、内存、CPU等)。各个虚拟主机之间完全独立,在外界看来,每一台虚拟主机和一台单独的主机的表现完全相同。所以这种被虚拟化的逻辑主机被形象地称为“虚拟主机”。

二、基于端口的虚拟主机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1、准备环境
#当前环境
# more /etc/issue
Red Hat Enterprise Linux Server release 6.3 (Santiago)
Kernel \r on an \m

# uname -rm
2.6.32-279.el6.x86_64 x86_64

# nginx -v
nginx version: nginx/1.8.0

# 创建3个目录用于存放不同形式虚拟主机index.html文件
# mkdir -p /website/baseport
# mkdir -p /website/baseip
# mkdir -p /website/basedomain

# vi /website/baseport/index.html 
<!DOCTYPE html>
<html>
<head>
<title>Base port sample</title>
</head>
<body>
<h1>This is an based port website sample(prot:8080).</h1>
</body>
</html>

2、配置nginx.conf
#第一个虚拟主机
server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

#第二个虚拟主机        
server {       
        listen       8080;
        server_name  localhost;

        location / {
            root   /website/port;
            index  index.html index.htm;
        }
    }

3、验证   
# nginx -t              #语法检查
# service nginx reload  #服务重载
# curl http://192.168.1.120:8080  #验证基于端口访问
<!DOCTYPE html>
<html>                                 
<head>
<title>Base port sample</title>
</head>
<body>
<h1>This is an based port website sample(prot:8080).</h1>
</body>
</html>

三、基于IP的虚拟主机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1、先添加IP
# ifconfig|grep "inet addr"
          inet addr:192.168.1.120  Bcast:192.168.1.255  Mask:255.255.255.0
          inet addr:127.0.0.1  Mask:255.0.0.0
# ifconfig eth0:0 192.168.1.220 netmask 255.255.255.0 up  #添加IP到eth0:0
# ifconfig|grep "inet addr"
          inet addr:192.168.1.120  Bcast:192.168.1.255  Mask:255.255.255.0
          inet addr:192.168.1.220  Bcast:192.168.1.255  Mask:255.255.255.0
          inet addr:127.0.0.1  Mask:255.0.0.0

2、配置nginx.conf
#第一个虚拟主机
server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;

#第二个虚拟主机                      
 server {
        listen       192.168.1.220:80;
        server_name  localhost;

        location / {
            root   /website/baseip;
            index  index.html index.htm;
        }
    }

3、验证    
# nginx -t                     #语法检查      Author:Leshami                     
# service nginx reload         #服务重载      Blog  :http://blog.csdn.net/leshami
# curl http://192.168.1.220    #验证基于IP访问
<!DOCTYPE html>
<html>
<head>
<title>Base ip sample</title>
</head>
<body>
<h1>This is an based ip website sample.</h1>
</body>
</html>

四、基于域名的虚拟主机

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
1、修改/etc/hosts文件
# echo "
192.168.1.120 bbs.ycdata.net bbs
192.168.1.120 mail.ycdata.net mail
> ">>/etc/hosts

2、配置nginx.conf
#第一个虚拟主机
server {
        listen       80;
        server_name mail.ycdata.net;

        location / {
            root   html;
            index  index.html index.htm;
        }

#第二个虚拟主机        
server {
        listen       80;
        server_name  bbs.ycdata.net;

        location / {
            root   /website/baseport;
            index  index.html index.htm;
        }
    }

3、验证
# curl http://mail.ycdata.net
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

# curl http://bbs.ycdata.net
<!DOCTYPE html>
<html>
<head>
<title>Base port sample</title>
</head>
<body>
<h1>This is an based port website sample(prot:8080).</h1>
</body>
</html>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016年05月13日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
关于 Nginx创建虚拟主机与地址重写
        server_name  www.linuxidc.com;                                  【设置域名】
星哥玩云
2022/07/13
1.1K0
Nginx学习之初始Nginx(一)
www.guapaoedu.com / ask.gupaoedu.com / git.gupaoedu.com / bbs.gupaoedu.com
周杰伦本人
2022/10/25
1950
Nginx——虚拟主机简介
Nginx服务部署在一台服务器上,通过IP、端口、域名对外实现多个访问入口,让客户端以为是多个服务器,这就是nginx虚拟主机。
思索
2024/08/16
1300
Nginx——虚拟主机简介
LNMP架构应用实战——Nginx配置虚拟主机
前面介绍了nginx服务的安装与配置文件,今天介绍下它的另一种实用配置——“虚拟主机”,每个虚拟主机可以是一个独立的网站,可以具有独立的域名,同一台服务器上的不同的虚拟主机之间是独立的,用户访问不同虚拟主机如同访问不同的服务器一样,因此它不需要为一个单独的WEB站点提供单独一个nginx服务器和一个单独的nginx进程
民工哥
2020/09/16
6600
LNMP架构应用实战——Nginx配置虚拟主机
007.Nginx虚拟主机
对于Nginx而言,每一个虚拟主机相当于一个在同一台服务器中却相互独立的站点,从而实现一台主机对外提供多个 web 服务,每个虚拟主机之间是独立的,互不影响的。
木二
2020/07/15
7560
007.Nginx虚拟主机
Nginx总结(三)如何配置基于端口的虚拟主机
前面讲了如何配置基于IP的虚拟主机,大家可以去这里看看nginx系列文章:https://www.cnblogs.com/zhangweizhong/category/1529997.html
架构师精进
2020/02/13
1.4K0
Nginx配置基于端口号配置虚拟主机
server 块中完成虚拟主机的设置,listen 命令监昕端口。 因此,若要在 Nginx 中配置一个虚拟主机,只需在 http 块中添加一个 server 块即可 。 换句话说, http 块中的每个 server 块都是一个虚拟主机。
兮动人
2021/06/11
9620
Nginx配置基于端口号配置虚拟主机
【NGINX入门】15.史上最全Nginx面试题
打开浏览器 输入 server_name/image/1.jpg 就可以访问该静态图片了
辉哥
2021/02/05
2.3K0
【NGINX入门】15.史上最全Nginx面试题
Nginx从陌生到入门02——配置虚拟主机(配置站点)
在上面配置文件里,我们就可以看到我们的默认配置站点,也就是servername是 localhost的这个server块。它监听了80端口,主机名是localhost 以及errorpage等。 对于新手来说,很多配置我们可以暂时不用了解。
huolong
2023/11/29
4940
Nginx从陌生到入门02——配置虚拟主机(配置站点)
Nginx(二)-- 配置文件之虚拟主机配置
1) 在nginx/conf/nginx.conf文件中的http段中添加一个server,如下所示:
码农小胖哥
2019/12/09
6790
Nginx总结(二)如何配置基于ip的虚拟主机
前面讲了如何安装配置Nginx,大家可以去这里看看nginx系列文章:https://www.cnblogs.com/zhangweizhong/category/1529997.html
架构师精进
2020/01/17
2K0
Nginx总结(二)如何配置基于ip的虚拟主机
nginx代理网卡_Nginx学完了!!! —Java133天学习
访问 http://192.168.70.144 将访问“html144”目录下的 html 网页
Java架构师必看
2021/08/23
9530
安装配置Nginx-01
一、下载配置安装Nginx 1.1 前言: 进入官网下载nginx安装包,截止到目前最新版为nginx1.12.1,本站使用的nginx版本为1.12也属于新版! ---- 二、下载编译 cd /usr/local/src wget http://nginx.org/download/nginx-1.12.1.tar.gz //下载地址会随时更新,建议直接到官网下载 tar zxf nginx-1.12.1.tar.gz ./configure --prefix=/usr/local/nginx
老七Linux
2018/05/09
6900
学习笔记0516----nginx配置
在Nginx中也有默认虚拟主机,跟httpd类似,第一个被Nginx加载的虚拟主机就是默认主机,但和httpd不相同的地方是,它还有一个配置用来标记默认虚拟主机,也就是说,如果没有这个标记,第一个虚拟主机为默认虚拟主机。
嘻哈记
2020/11/24
1K0
Linux下配置Apache httpd
httpd是Apache超文本传输协议(HTTP)服务器的主程序。它被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池对外提供服务。httpd支持基于 虚拟主机,以及基于HOST、IP、PORT实现虚拟主机,反向代理,负载均衡,路径别名,用户认证,basic,支持第三方模块等众多特性。本文主要描述了Linux下httpd(2.2版本)的相关基本配置。 1、配置文件概述 配置文件,主要分为3个部分: # grep "Section" /etc/httpd/conf/h
Leshami
2018/08/13
2.3K0
nginx.conf详解和Nginx的虚拟主机
cat /etc/nginx/nginx.conf worker_processes 1; #定义有多少个工作的子进程,可自行修改,太大无益,因为要争夺CPU,一般设置为核心总数(lscpu中CPU(S)可看) events { worker_connections 1024; #一个worker允许同时最大产生多少个链接 } http { #Web功能的标签 include conf/mime.types; #设定mime类型,类型由con
张琳兮
2019/03/14
5870
nginx.conf详解和Nginx的虚拟主机
Nginx虚拟主机配置
虚拟主机就是使用特殊的软硬件技术,把一台计算机主机分成多台“虚拟”的主机,每一台虚拟主机都具有独立的域名和IP地址(或共享的IP地址),具有完整的Internet服务器功能。在同一台硬件、同一个操作系统上,运行着为多个用户打开的不同的服务器程序,互不干扰;而各个用户拥有自己的一部分系统资源(IP地址、文件存储空间、内存、CPU时间等)。 其实说白了就是有一套大房子,然后给这个房子加上隔断,分成几个小屋,然后每个小屋都租赁给一个商户,每个商户之间都是相互不受影响的,相互独立的。
令仔很忙
2018/09/14
6.5K0
Nginx应用场景之虚拟主机
在公司企业环境中,有业务服务A、业务服务B、业务服务C等等,这样就面临多套业务都需要往线上部署,并且都需要通过nginx进行web服务的反向代理或者web服务的配置,那么多套业务该如何来进行配置和部署呢?
Hellboycc
2020/09/22
7810
Nginx应用场景之虚拟主机
Nginx如何添加虚拟主机
在sites-enabled内创建指向sites-available目录虚拟主机文件的软链接:
fanzhh
2019/08/20
1.8K0
nginx虚拟主机配置
虚拟主机的概念 虚拟主机,就是把一台物理服务器划分成多个“虚拟”的服务器,每一个虚拟主机都可以有独立的域名和独立的目录 nginx虚拟主机的配置 nginx的虚拟主机就是通过nginx.conf中server节点指定的,想要设置多个虚拟主机,配置多个server节点即可 先看一个最简单的虚拟主机配置示例 server { listen 80; server_name a.test.com; location / { i
dys
2018/04/02
6.7K0
相关推荐
关于 Nginx创建虚拟主机与地址重写
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验