nginx跨域配置

新建cors-include.conf扩展配置

if ($request_method = 'OPTIONS') {
        add_header 'Access-Control-Allow-Origin' 'http://www.xxx.com:56' always;
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
        add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,Accept,Referer,Accept-Encoding,Accept-Language,Access-Control-Request-Headers,Access-Control-Request-Method,Connection,Host,Origin,Sec-Fetch-Mode,ApiAuthorization,*' always;
        add_header 'Access-Control-Max-Age' 1728000;
        add_header 'Content-Type' 'text/plain charset=UTF-8';
        add_header 'Content-Length' 0;
        return 204;
       }
       if ($request_method = 'POST') {
        add_header 'Access-Control-Allow-Origin' 'http://www.xxx.com:56' always;
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
        add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,Accept,Referer,Accept-Encoding,Accept-Language,Access-Control-Request-Headers,Access-Control-Request-Method,Connection,Host,Origin,Sec-Fetch-Mode,ApiAuthorization,*';
       }
       if ($request_method = 'GET') {
        add_header 'Access-Control-Allow-Origin' 'http://www.xxx.com:56' always;
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
        add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,Accept,Referer,Accept-Encoding,Accept-Language,Access-Control-Request-Headers,Access-Control-Request-Method,Connection,Host,Origin,Sec-Fetch-Mode,ApiAuthorization,*';
       }

nginx.conf配置

server {
        listen       8082;
        gzip on;
		gzip_min_length 1k;
		gzip_comp_level 9;
		gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
		gzip_vary on;
		gzip_disable "MSIE [1-6]\.";
        
 
	  location / {
			root html;
			index index.html index.htm;
			# 用于配合 browserHistory使用
			try_files $uri $uri/ /index.html;
			# 如果有资源,建议使用 https + http2,配合按需加载可以获得更好的体验
			# rewrite ^/(.*)$ https://preview.pro.ant.design/$1 permanent;javascript:;

		}
		
    location /api/ {
	    include cors-include.conf;
        proxy_pass  http://localhost:8014/api/;   
        proxy_set_header   X-Forwarded-Proto $scheme;
        proxy_set_header   Host              $http_host;
        proxy_set_header   X-Real-IP         $remote_addr;
       }  
    }
posted @ 2022-08-18 09:21  暗夜苹果  阅读(1350)  评论(0编辑  收藏  举报