linux nginx虚拟主机配置文件,详述Linux系统中Nginx虚拟主机的配置

Nginx虚拟主机应用

Nginx支持的虚拟主机有三种

基于域名的虚拟主机.

基于IP的虚拟主机

基于端口的虚拟主机

通过"server{}"配置段实现

本篇实验接着上一篇搭建Nginx服务继续搭建,前面Nginx的编译安装不在介绍

基于域名的虚拟主机

[root@localhost nginx-1.12.2]# mkdir -p /var/www/html/accp //递归创建accp网页站点目录

[root@localhost nginx-1.12.2]# mkdir -p /var/www/html/kgc //递归创建kgc网页站点目录

[root@localhost nginx-1.12.2]# cd /var/www/html/ //进入站点目录

[root@localhost html]# ls //查看

accp kgc

[root@localhost html]# echo "this is kgc web" > kgc/index.html //创建站点文件

[root@localhost html]# echo "this is accp web" > accp/index.html //创建站点文件

[root@localhost html]# ls accp/ //查看accp站点目录

index.html

[root@localhost html]# ls kgc/ //查看kgc站点目录

index.html

[root@localhost conf]# vim /etc/named.rfc1912.zones //编辑DNS服务区域配置文件

...//省略部分内容...

zone "kgc.com" IN {

type master;

file "kgc.com.zone";

allow-update { none; };

};

zone "accp.com" IN {

type master;

file "accp.com.zone"; //添加accp网页域名解析

allow-update { none; };

};

...//省略部分内容...

:wq

[root@localhost conf]# cd /var/named/

[root@localhost named]# cp -p named.localhost kgc.com.zone //复制区域数据文件

[root@localhost named]# vim kgc.com.zone //编辑kgc区域数据文件

$TTL 1D

@ IN SOA @ rname.invalid. (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

NS @

A 127.0.0.1

www IN A 192.168.144.133

:wq

[root@localhost named]# cp -p kgc.com.zone accp.com.zone

//复制kgc区域数据文件保持权限不变,复制为accp区域数据文件

[root@localhost named]# systemctl restart named //重启DNS服务

[root@localhost init.d]# cd /usr/local/nginx/conf/

[root@localhost conf]# vim nginx.conf //编辑Nginx主配置文件

...//省略部分内容...

server {

listen 80;

server_name www.kgc.com; //设置kgc域名访问条目

charset utf-8; //更改字符串类型

access_log logs/www.kgc.com.access.log; //更改日志文件名称

location / {

root /var/www/html/kgc; //更改站点位置

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 80;

server_name www.accp.com;

charset utf-8;

access_log logs/www.accp.com.access.log;

location / {

root /var/www/html/accp;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

...//省略部分内容...

:wq

[root@localhost conf]# nginx -t //检测语法

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@localhost conf]# service nginx restart //重启服务

[root@localhost conf]# systemctl restart named //重启DNS服务

在客户机中测试网页

c13b0b2b8ea2975918d5f682de80ac6b.png

90103ec6fea8d5ac70e711adc102bdf8.png

基于端口的虚拟主机

[root@localhost conf]# vim nginx.conf //编辑Nginx主配置文件

...//省略部分内容...

# server {

# listen 80;

# server_name www.kgc.com;

# charset utf-8;

# access_log logs/www.kgc.com.access.log;

# location / {

# root /var/www/html/kgc; //注释掉此部分内容

# index index.html index.htm;

# }

# error_page 500 502 503 504 /50x.html;

# location = /50x.html {

# root html;

# }

# }

server {

listen 192.168.144.133:80; //端口条目钱添加IP地址

server_name www.accp.com;

charset utf-8;

access_log logs/www.accp.com.access.log;

location / {

root /var/www/html/accp;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server { //复制上面部分的内容

listen 192.168.144.133:8080; //设置相同IP监听不同端口

server_name www.accp.com;

charset utf-8;

access_log logs/www.accp8080.com.access.log; //更改日志文件名称

location / {

root /var/www/html/accp8080; //整改站点文件目录名称

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

...//省略部分内容...

:wq

[root@localhost conf]# cd /var/www/html/ //进入站点目录

[root@localhost html]# mkdir accp8080 //创建目录

[root@localhost html]# echo "this is accp8080 web" > accp8080/index.html //编辑网页内容

[root@localhost html]# cd /usr/local/nginx/conf/

[root@localhost conf]# nginx -t //检测语法

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@localhost conf]# service nginx restart //重启服务

[root@localhost conf]# netstat -ntap | grep 80 //查看端口

tcp 0 0 192.168.144.133:8080 0.0.0.0:* LISTEN 11967/nginx: master

tcp 0 0 192.168.144.133:80 0.0.0.0:* LISTEN 11967/nginx:

在客户机中访问测试

5873f9b5a6144ed888dd75970294ea86.png

a940e2e19439dc049565432cda199520.png

基于不同IP的虚拟主机

首先给Linux虚拟机添加网卡

2c767bd92308110d95483ec2abdf081f.png

[root@localhost conf]# ifconfig //查看新添加的网卡信息,并记录IP地址

ens33: flags=4163 mtu 1500

inet 192.168.144.133 netmask 255.255.255.0 broadcast 192.168.144.255

inet6 fe80::a85a:c203:e2e:3f3c prefixlen 64 scopeid 0x20

ether 00:0c:29:5b:d3:a0 txqueuelen 1000 (Ethernet)

RX packets 67362 bytes 72060261 (68.7 MiB)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 16836 bytes 1825469 (1.7 MiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

ens36: flags=4163 mtu 1500

inet 192.168.144.145 netmask 255.255.255.0 broadcast 192.168.144.255

inet6 fe80::deb1:3cec:3e26:5ec2 prefixlen 64 scopeid 0x20

ether 00:0c:29:5b:d3:aa txqueuelen 1000 (Ethernet)

RX packets 6 bytes 926 (926.0 B)

RX errors 0 dropped 0 overruns 0 frame 0

TX packets 27 bytes 4513 (4.4 KiB)

TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

[root@localhost conf]# vim /var/named/kgc.com.zon //更改DNS区域数据文件中kgc网页解析的IP地址

$TTL 1D

@ IN SOA @ rname.invalid. (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

NS @

A 127.0.0.1

www IN A 192.168.144.145 //更改为新添加网卡的IP地址

:wq

[root@localhost conf]# vim nginx.conf //编辑主配置文件

...//省略部分内容...

server {

listen 192.168.144.145:80; //去掉上面配置基于端口时全面添加的注释,并添加监听的IP地址

server_name www.kgc.com;

charset utf-8;

access_log logs/www.kgc.com.access.log;

location / {

root /var/www/html/kgc;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

server {

listen 192.168.144.133:80;

server_name www.accp.com;

charset utf-8;

access_log logs/www.accp.com.access.log; //保持不变

location / {

root /var/www/html/accp;

index index.html index.htm;

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

}

# server {

# listen 192.168.144.133:8080;

# server_name www.accp.com;

# charset utf-8;

# access_log logs/www.accp8080.com.access.log; //注释掉此部分内容

# location / {

# root /var/www/html/accp8080;

# index index.html index.htm;

# }

# error_page 500 502 503 504 /50x.html;

# location = /50x.html {

# root html;

# }

# }

...//省略部分内容...

:wq

[root@localhost conf]# nginx -t //检测语法

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

[root@localhost conf]# service nginx restart //重启服务

[root@localhost conf]# systemctl restart named //重启DNS服务

在客户机中访问测试(此处建议新开启一台客户机做访问测试)

930eb589bac541d7d1131d6e23e68234.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值