nginx 通过外网服务器泛域名配置映射到内网端口或者泛地址

server
{
    listen 80;
    server_name *.bzkj.xxxx.com;
    index index.php index.html index.htm default.php default.htm default.html;
    root /www/wwwroot/ip.bzkj.xxxx.com;
    
    
    location / { 
			# 泛域名开始配置
			if ( $host ~* (.*)\.(.*)\.(.*)\.(.*) ) {
			set $domain $1; #获取当前的 域名前缀
			}
            
            resolver 114.114.114.114;
            
            if ($domain ~* "^([0-9]+)$") {
            	set $url "http://company.xxxxxx.com:$domain"; //全数字情况解析到端口
            }
            if ($domain !~* "^([0-9]+)$"){
            	set $url "http://$domain.xxxxxx.com:2480"; //如果不是全数字则解析到泛域名上
            }
            
            proxy_pass $url; 
		proxy_set_header   Host    $host; 
		proxy_set_header   X-Real-IP   $remote_addr; 
		proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; 
		} 

    
    access_log  /www/wwwlogs/ip.bzkj.xxxx.com.log;
    error_log  /www/wwwlogs/ip.bzkj.xxxx.com.error.log;
}

直接留代码记录下

猜你喜欢

转载自blog.csdn.net/u014259491/article/details/88845930