Nginx进行域名重写和泛域名解析配置的方法

本文介绍了Nginx进行域名重写和泛域名解析配置的方法,分享给大家,具体如下:

#user nobody;
worker_processes 1;
 
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
 
#pid  logs/nginx.pid;
 
 
events {
 worker_connections 1024;
}
 
 
http {
 include  mime.types;
 default_type application/octet-stream;
 
 #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
 #     '$status $body_bytes_sent "$http_referer" '
 #     '"$http_user_agent" "$http_x_forwarded_for"';
 
 #access_log logs/access.log main;
 
 sendfile  on;
 #tcp_nopush  on;
 
 #keepalive_timeout 0;
 keepalive_timeout 65;
 
 #gzip on;
 
 #设置允许发布内容为8M
 client_max_body_size 20M;
 client_body_buffer_size 512k;
 
 add_header Access-Control-Allow-Origin *; 
 add_header Access-Control-Allow-Headers X-Requested-With; 
 add_header Access-Control-Allow-Methods GET,POST,OPTIONS; 
 
 server { 
 listen  80; 
 server_name www.xxx.com; 
 location / { 
 proxy_pass http://127.0.0.1:8080; 
 proxy_set_header Host $host; 
 proxy_set_header X-Real-IP $remote_addr; 
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
 } 
 }
 
 server { 
 listen  80; 
 server_name www.aaa.com; 
 location / { 
 proxy_pass http://127.0.0.1:9989; 
 proxy_set_header Host $host; 
 proxy_set_header X-Real-IP $remote_addr; 
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
 } 
 }
 
 
 #泛域名解析
 server { 
 listen  80; 
 server_name *.web.yuyuyun.cn; 
 location / { 
 # 泛域名开始配置
 if ( $host ~* (.*)\.(.*)\.(.*)\.(.*) ) {
 set $domain $1; #获取当前的 域名前缀
 }
 proxy_pass http://127.0.0.1:1119/$domain/; 
 proxy_set_header Host $host; 
 proxy_set_header X-Real-IP $remote_addr; 
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
 } 
 
 } 
 
}