+-
nginx配置实现二级域名

nginx配置实现二级域名:

首先配置 server_name,将你要配置的二级域名增加进去。

其次定义subdomian

server {
	listen 80;
	server_name www.aiisen.com *.aiisen.com;
        #定义二级域名subdomain,可以过滤掉一级使用的域名,同时定义当前访问的url:suburl
	if ($host ~* (\b(?!(www|coal|ddpt)\b)[\w-]+)\.\w+\.com) {
	    set $subdomain $1;
	    set $suburl $request_uri;
	}

	location / {
		proxy_redirect off;
		proxy_set_header Host $host;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_pass http://aiisen.com;
		proxy_connect_timeout      300;
		proxy_send_timeout         300;
		proxy_read_timeout         300;
		if ($suburl ~ "/$"){ #判断:如果是访问的二级域名:abc.aiisen.com/,这种格式的,即可访问指定的url
			rewrite ^/(.*) /entp/ShopInfo.do?method=subdomain&custom_url=$subdomain break;
		}
	}

	location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico|js|css|txt|zip)$ {
		proxy_redirect off;
		proxy_set_header Host $host;
		proxy_pass http://aiisen.com;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_redirect false;
		access_log off;
		expires 7d;
	}

}