Nginx配置虚拟主机

虚拟主机指的是,在一台服务器中,我们使用Nginx,来配置多个网站。

如何区分不同的网站:

  1. 端口不同
  2. 域名不同

1、通过端口区分不同的虚拟主机

1.1、Nginx配置文件

(1)Nginx配置文件的位置

cd /usr/local/nginx/conf
nginx.conf 就是Nginx的配置文件

(2)Nginx核心配置文件说明

worker_processes 1; #work的进程数,默认为1
#配置 影响nginx服务器与用户的网络连接
events {
    worker_connections 1024; #单个work 最大并发连接数
}

# http块是配置最频繁的部分 可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能
http {
    # 引入mime类型定义文件
    include mime.types;
    default_type application/octet-stream;
    sendfile on;
    keepalive_timeout 65; # 超时时间

    #server 配置虚拟主机的相关参数 可以有多个,一个server就是一个虚拟主机
    server {
        # 监听的端口
        listen 80;
        #监听地址
        server_name localhost;

        # 默认请求配置
        location / {
            root html; # 默认网站根目录
            index index.html index.htm; # 欢迎页
        }
        
        # 错误提示页面
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root html;
        }
    }
}

1.2、配置nginx.conf 

(1)使用vim命令编辑此配置文件

http {
    include mime.types;
    default_type application/octet-stream;

    sendfile on;
    #tcp_nopush on;

    #keepalive_timeout 0;
    keepalive_timeout 65;

    #gzip on;

    server {
        listen 80;
        server_name localhost;
        location / {
            root html;
            index index.html index.htm;
        }
    }


    # 配置新的server
    server {
        listen 81; # 修改端口
        server_name localhost;
        location / {
            root html81; # 重新制定一个目录
            index index.html index.htm;
        }
    }
}

(2)复制一份 html目录

cp -r html html81

(3) 重新加载配置文件

sbin/nginx -s reload

(4)访问

http://192.168.80.100 访问第一个server
http://192.168.81.100:81/ 访问第二个server

2、通过域名区分不同的虚拟主机

2.1、配置域名映射

  • 本地测试可以修改hosts文件。修改window的hosts文件:(C:\Windows\System32\drivers\etc)
  • 可以配置域名和ip的映射关系,如果hosts文件中配置了域名和ip的对应关系,不需要走dns服务器。

配置一下nginx的映射
182.168.80.100 www.ng.com

在window系统中配置host文件 

192.168.80.100 www.taobao.com
192.168.80.100 www.jd.com

2.2、配置nginx.conf

#通过域名区分虚拟主机
server {
    listen 80;
    server_name www.taobao.com;
    location / {
        root taobao;
        index taobao.html;
    }
}

    server {
        listen 80;
        server_name www.jd.com;
        location / {
            root jd;
            index jd.html;
        }
}

(1)修改一下index.html 中,刷新

sbin/nginx -s reload

(2)访问

        虽然只有一台服务器,但是这台服务器上运行着多个网站,访问不同的域名 就可访问到不同的网站内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悠然予夏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值