2.7.1.RELEASE Boot版 ,本地访问正常,发布到线上出现跨域问题

Blade 已结 2 1214
will
will 2021-01-29 13:49
悬赏:10

一、该问题的重现步骤是什么?

本地访问正常,发布到线上出现跨域问题



二、你期待的结果是什么?实际看到的又是什么?


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

版本:2.7.1.RELEASE Boot版 。本地win10  线上centos8 ,nginx

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

nginx 


location ^~/api {
     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_buffering off;
     # rewrite ^/api/(.*)$ /$1 break;
     proxy_pass http://127.0.0.1:10020;
}
BladeConfiguration 代码:

@Configuration
public class BladeConfiguration implements WebMvcConfigurer {

   /**
    * 跨域配置
    */
   @Override
   public void addCorsMappings(CorsRegistry registry) {
      registry.addMapping("/**")
         .allowedOrigins("*")
         .allowedHeaders("*")
         .allowedMethods("*")
         .maxAge(3600)
         .allowCredentials(true);
   }

}
2021-01-29 14:24:52.020  WARN 240352 --- [  XNIO-1 task-1] o.s.web.servlet.PageNotFound             : No mapping for OPTIONS /api/blade-auth/oauth/token
2021-01-29 14:24:52.031 ERROR 240352 --- [  XNIO-1 task-1] o.s.c.log.error.RestExceptionTranslator  : 404没找到请求:No handler found for OPTIONS /api/blade-auth/oauth/token
2021-01-29 14:25:01.034  WARN 240352 --- [  XNIO-1 task-2] o.s.web.servlet.PageNotFound             : No mapping for OPTIONS /api/blade-auth/oauth/token
2021-01-29 14:25:01.035 ERROR 240352 --- [  XNIO-1 task-2] o.s.c.log.error.RestExceptionTranslator  : 404没找到请求:No handler found for OPTIONS /api/blade-auth/oauth/token

2条回答
  •  will
    will (楼主)
    2021-01-29 16:55

    谢谢 已解决。
    
    正确的 nginx 配置:
    
    location /api {
         proxy_pass http://127.0.0.1:10020/;
    }


提交回复