Nginx配置之基於域名的虛擬主機

kumu_linux發表於2012-06-22
1、配置好DNS解析
[root@server ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.2 (Santiago)
[root@server ~]# uname -r
2.6.32-220.el6.i686
[root@server ~]# yum install bind* -y
[root@server ~]# vim /etc/named.conf
[root@server ~]# cat /etc/named.conf
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
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";
allow-query { any; };
recursion yes;

dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;

/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
};

logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};

zone "." IN {
type hint;
file "named.ca";
};

zone "sxkeji.com.cn" IN {
type master;
file "sxkeji.com.cn.zone";
};
[root@server ~]# cp /var/named/named.localhost /var/named/sxkeji.com.cn.zone
[root@server ~]# vim /var/named/sxkeji.com.cn.zone
[root@server ~]# cat /var/named/sxkeji.com.cn.zone
$TTL 1D
@	IN SOA	sxkeji.com.cn rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@	
@	A 	192.168.10.199	
www	A   	192.168.10.199	
mail	A   	192.168.10.199	
[root@server ~]# service named restart

測試DNS解析是否成功
[root@server ~]# host www.sxkeji.com.cn
www.sxkeji.com.cn has address 192.168.10.199
[root@server ~]# host mail.sxkeji.com.cn
mail.sxkeji.com.cn has address 192.168.10.199
[root@server ~]#

2、配置Nginx虛擬主機
[root@server ~]# vim /usr/local/nginx/conf/nginx.conf
[root@server ~]# grep -vE "#|^$" /usr/local/nginx/conf/nginx.conf

worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    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;
        }
    
    }
    server {
        listen       80;
        server_name  mail.sxkeji.com.cn;
        location / {
            root   /usr/local/nginx/html/mail.sxkeji.com;
            index  index.html index.htm;
        }
    }

    include /usr/local/nginx/conf/vhosts/sxkeji.conf;

#include這裡是模組化的,把虛擬主機獨立成一個配置檔案

#上面斜體server部分是在主配置檔案中直接實現虛擬主機
}
[root@server ~]# cat /usr/local/nginx/conf/vhosts/sxkeji.conf #vhosts目錄需要自己建立,主頁目錄也是需要自己建立的
server {
listen 80;
server_name www.sxkeji.com.cn;
access_log logs/sxkeji.com.log;

location / {
index index.html;
root /usr/local/nginx/html/sxkeji.com;
}
}
[root@server ~]#

3、測試是否成功
[root@server ~]# kill -HUP `cat /usr/local/nginx/logs/nginx.pid` #重啟nginx
[root@server ~]# vim /usr/local/nginx/html/sxkeji.com/index.html
[root@server ~]# vim /usr/local/nginx/html/mail.sxkeji.com/index.html
[root@server ~]# cat /usr/local/nginx/html/mail.sxkeji.com/index.html
mail.sxkeji.com.cn
[root@server ~]# cat /usr/local/nginx/html/sxkeji.com/index.html
www.sxkeji.com.cn
[root@server ~]# elinks --dump 127.0.0.1
hello!
[root@server ~]# elinks --dump mail.sxkeji.com.cn
mail.sxkeji.com.cn
[root@server ~]# elinks --dump www.sxkeji.com.cn
www.sxkeji.com.cn
[root@server ~]#

########如此便可以收工了,下次繼續基於埠的虛擬主機配置########

Nginx相關

Nginx安裝配置:點選開啟連結

Nginx虛擬主機配置:點選開啟連結

相關文章