Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)
admin
2023-02-28 01:41:49
0

DNS服务配置

1.安装bind服务

[root@localhost sbin]# yum install bind -y
...........//省略安装过程
[root@localhost sbin]#

2.查看网卡信息(IP地址)

[root@localhost named]# ifconfig
ens33: flags=4163  mtu 1500
        inet 192.168.52.133  netmask 255.255.255.0  broadcast 192.168.52.255
        inet6 fe80::3e1d:31ba:f66a:6f80  prefixlen 64  scopeid 0x20
        ether 00:0c:29:27:1c:3f  txqueuelen 1000  (Ethernet)
        RX packets 384057  bytes 558603083 (532.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 182891  bytes 11237471 (10.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

3.修改主配置文件

[root@localhost sbin]# vim /etc/named.conf

options {
        listen-on port 53 { any; };    //127.0.0.1改为any
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };      //localhost改为any

[root@localhost sbin]#

4.修改区域配置文件

[root@localhost sbin]# vim /etc/named.rfc1912.zones

zone "abc.com" IN {        //添加两个区域信息
        type master;
        file "abc.com.zone";
        allow-update { none; };
};

zone "xyz.com" IN {
        type master;
        file "xyz.com.zone";
        allow-update { none; };
};

[root@localhost sbin]#

5.修改区域数据配置文件

[root@localhost sbin]# cd /var/named/
[root@localhost named]# ls
data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@localhost named]# cp -p named.localhost abc.com.zone    //复制模板并命名
[root@localhost named]# vim abc.com.zone 

$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.52.133   //添加解析地址

[root@localhost named]# cp -p abc.com.zone xyz.com.zone    //复制abc域名的区域配置文件命名为xyz域名
[root@localhost named]# ls
abc.com.zone  data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves  xyz.com.zone
[root@localhost named]# 
[root@localhost named]# systemctl start named   //开启dns服务
[root@localhost named]# systemctl stop firewalld.service    //关闭防火墙
[root@localhost named]# setenforce 0    //关闭增强性安全功能
[root@localhost named]# 

基于域名的虚拟主机配置

1.分别给两个站点创建首页文件

[root@localhost named]# mkdir -p /var/www/html/abc    //创建abc站点
[root@localhost named]# mkdir -p /var/www/html/xyz    //创建xyz站点
[root@localhost named]# cd /var/www/html/
[root@localhost html]# ls
abc  xyz
[root@localhost html]# echo "this is abc web" > abc/index.html   //创建首页文件
[root@localhost html]# echo "this is xyz web" > xyz/index.html   //创建首页文件
[root@localhost html]#

2.修改nginx服务配置文件

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

    server {
        listen       80;             //监听端口
        server_name  www.abc.com;      //域名
        charset utf-8;      //字符集,utf-8支持中文字符
        access_log  logs/www.abc.com.access.log;     //访问日志
        location / {
            root   /var/www/html/abc;    //站点
            index  index.html index.htm;     //支持的首页类型
        }
        error_page   500 502 503 504  /50x.html;    //访问错误文件
        location = /50x.html {
            root   html;     //站点
        }
    }

    server {
        listen       80;    //监听端口
        server_name  www.xyz.com;     //域名
        charset utf-8;      //字符集,utf-8支持中文字符
        access_log  logs/www.xyz.com.access.log;    //访问日志
        location / { 
            root   /var/www/html/xyz;    //站点
            index  index.html index.htm;     //支持的首页类型
        }
        error_page   500 502 503 504  /50x.html;    //访问错误文件
        location = /50x.html {
            root   html;     //站点
        }
    } 

[root@localhost html]#

3.检查测试配置文件,并重启服务

[root@localhost html]# 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 html]# service nginx restart      //重启服务
[root@localhost html]# 

4.开启一台win10作为测试机,设置dns地址

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

5.测试能否进行域名解析(成功)

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

6.用测试机浏览器访问两个域名

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

基于端口的虚拟主机配置

1.修改nginx服务的配置文件

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

    server {
        listen       192.168.52.133:80;     //监听端口
        server_name  www.abc.com;
        charset utf-8;
        access_log  logs/www.abc.com.access.log;    //访问日志
        location / {
            root   /var/www/html/abc;     //站点
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

    server {
        listen       192.168.52.133:8080;    //监听端口
        server_name  www.abc.com;
        charset utf-8;
        access_log  logs/www.abc8080.com.access.log;     //访问日志
        location / {
            root   /var/www/html/abc8080;     //站点
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

2.测试配置文件

[root@localhost html]# 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 html]# 

3.创建8080端口站点目录与首页文件

[root@localhost html]# mkdir abc8080   //创建站点目录
[root@localhost html]# echo "this is abc8080 web" > abc8080/index.html     //创建首页文件
[root@localhost html]# service nginx restart    //重启nginx服务
[root@localhost html]#

4.用测试机浏览器访问相同域名的不同端口

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

基于IP的虚拟主机配置

1.给虚拟机添加一块网卡

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

2.查看网卡信息(IP地址)

[root@localhost html]# ifconfig 
ens33: flags=4163  mtu 1500
        inet 192.168.52.133  netmask 255.255.255.0  broadcast 192.168.52.255
        inet6 fe80::3e1d:31ba:f66a:6f80  prefixlen 64  scopeid 0x20
        ether 00:0c:29:27:1c:3f  txqueuelen 1000  (Ethernet)
        RX packets 391887  bytes 559453355 (533.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 185573  bytes 11520948 (10.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens36: flags=4163  mtu 1500
        inet 192.168.52.139  netmask 255.255.255.0  broadcast 192.168.52.255
        inet6 fe80::f7fb:4ddc:f4b6:b90a  prefixlen 64  scopeid 0x20
        ether 00:0c:29:27:1c:49  txqueuelen 1000  (Ethernet)
        RX packets 14  bytes 1737 (1.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 24  bytes 4219 (4.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

3.修改域名区域数据配置文件“xyz.com.zone”的解析地址

[root@localhost html]# vim /var/named/xyz.com.zone

$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.52.139    //修改ip地址为192.168.52.139

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

4.用测试机检查域名解析是否正常(正常)

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

5.修改nginx服务的配置文件

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

    server {
        listen       192.168.52.133:80;     //监听IP地址与端口
        server_name  www.abc.com;    //域名
        charset utf-8;    //字符集,utf-8支持中文字符
        access_log  logs/www.abc.com.access.log;    //访问日志
        location / { 
            root   /var/www/html/abc;    //站点
            index  index.html index.htm;   //支持的首页格式
        }
        error_page   500 502 503 504  /50x.html;    //访问错误首页文件
        location = /50x.html {
            root   html;      //站点
        }
    } 

    server {
        listen       192.168.52.139:80;     //监听IP地址与端口
        server_name  www.xyz.com;    //域名
        charset utf-8;    //字符集,utf-8支持中文字符
        access_log  logs/www.xyz.com.access.log;    //访问日志
        location / {
            root   /var/www/html/xyz;    //站点
            index  index.html index.htm;   //支持的首页格式
        }
        error_page   500 502 503 504  /50x.html;    //访问错误首页文件
        location = /50x.html {
            root   html;      //站点
        }
    }

6.测试配置文件,没有问题,重启服务

[root@localhost html]# 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 html]# service nginx restart    //重启服务
[root@localhost html]# 

7.用测试机分别访问两个不同IP地址的域名

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

Nginx服务虚拟主机的配置----------基于域名、端口、IP(实战!)

相关内容

热门资讯

中国第一台高能加速器:北京正负... 感谢IT之家网友 的线索投递! 5 月 7 日消息,中国科学院高能物理研究所今日官宣,2026 年...
最强计算组合刷新大分子模拟纪录 量子计算机最具前景的应用方向之一,就是模拟蛋白质,助力新药研发。但眼下这类设备误差率仍然偏高。据英国...
贵州高校借力“中国天眼”勇攀科... “中国天眼”(FAST)。 新华社记者 欧东衢 摄 4月8日,遵义师范学院青年教师吴庆东以第一作者身...
Claude牵手马斯克,调用限... 智东西 作者 | 程茜 编辑 | 李水青 智东西5月7日报道,今日凌晨,Anthropic在开发者大...
男子称爷爷30年前向天津美院捐... 5月6日,天津康先生反映,1996年他爷爷捐赠40件书画到天津美术学院,如今部分书画去向不明。
寒武纪股价再成A股最贵,半导体... 一方面,受益于AI产业发展,不少半导体公司业绩上涨;另一方面,美股半导体的上涨也带动了A股行情 文|...
OpenAI两大劲敌联手!马斯... AIPress.com.cn报道 奥特曼今晚能安然入睡吗? 就在刚刚,OpenAI的两大死对头美美牵...
原创 张... 文|唐辰 图|网络资料 张一鸣也没有余粮了么? 这两天,“豆包 付费”的话题持续高热,因为豆包要收费...
陈毓川院士逝世!他带领数千人干... ◎ 科技日报记者 操秀英5月6日,中国工程院院士,著名矿床地质学家陈毓川永远停下了跋涉的脚步,享年9...
利用中国国民党主席郑丽文形象的... 【大河财立方消息】 5月7日消息,上海证监局日前开出行政处罚决定书,对上海雷根资产管理有限公司实际控...