Nginx虚拟主机——基于域名

本文介绍了如何设置Nginx基于域名的虚拟主机,包括配置DNS域名解析服务和创建虚拟主机的详细步骤,如安装编译组件、创建程序用户、编辑Nginx配置文件以及测试不同域名的访问。

基于域名的虚拟机

IP地址:192.168.35.132

域名:www.kgc.com或www.accp.com

1.远程共享及挂载

smbclient -L //192.168.100.7/
mkdir /abc
mount.cifs //192.168.100.7/LAMP-C7 /abc

2.解压源码包

tar zxvf nginx-1.12.2.tar.gz -C /opt/

3.下载安装编译组件包

yum -y install gcc gcc-c++ pcre-devel zlib-devel

4.创建程序用户并配置Nginx服务相关组件

[root@localhost opt]# useradd -M -s /sbin/nologin nginx
//创建程序用户nginx,并限定其不可登录终端
[root@localhost opt]# cd nginx-1.12.0/
[root@localhost nginx-1.12.0]# ./configure \            //配置nginx
> --prefix=//usr/local/nginx \        //指定安装路径                        
> --user=nginx \                    //指定用户名
> --group=nginx \                   //指定用户所属组
> --with-http_stub_status_module    //安装状态统计模块

5.编译与安装

 make && make install

6.优化Nginx服务启动脚本,并建立命令软连接

[root@localhost nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ 
//创建nginx服务命令软链接到系统命令
[root@localhost nginx-1.12.0]# systemctl stop firewalld.service   //关闭防火墙
[root@localhost nginx-1.12.0]# setenforce 0                       //关闭增强型安全功能
[root@localhost nginx-1.12.0]# nginx                              //输入nginx 开启服务
[root@localhost nginx-1.12.0]# netstat -ntap | grep 80        //查看服务的80 端口,显示已开启
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      7520/nginx: master  

配置DNS域名解析服务

[root@localhost ~]# yum -y install bind
//安装DNS服务的bind包
[root@localhost ~]# 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 ~]# vim /etc/named.rfc1912.zones    //编辑两个域名的区域配置文件

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

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

[root@localhost ~]# 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.35.132
##删除原来末行的内容,添加域名解析地址为本机地址

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

[root@localhost named]# systemctl start named   
//开启dns服务
[root@localhost named]# systemctl stop firewalld.service    
//关闭防火墙
[root@localhost named]# setenforce 0   
//关闭增强型安全功能

创建虚拟主机

1.创建测试网页

[root@localhost named]# cd 
[root@localhost ~]# mkdir -p /var/www/html/kgc
[root@localhost ~]# mkdir -p /var/www/html/accp
[root@localhost ~]# ls /var/www/html/
accp  kgc
[root@localhost ~]# cd /var/www/html/
[root@localhost html]# echo "this kgc web" > kgc/index.html
[root@localhost html]# echo "this accp web" > accp/index.html

2.编辑nginx.conf配置文件

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

server {
        listen       80;
        server_name  www.kgc.com;
		
        charset utf-8;
		##支持中文字符
        access_log  logs/www.kgc.com.access.log;
		##kgc站点访问日志
        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       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;
        }
 }

3.载Nginx服务

[root@localhost ~]# killall nginx
[root@localhost ~]# nginx
[root@localhost ~]# netstat -ntap | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      6117/nginx: master 

4.测试网页,输入www.kgc.com与www.accp.com两个域名进行访问

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值