原文リンク:https://juejin.cn/post/7137272408850825246
反代後にクロスオリジンの問題が発生し、インターネットでクロスオリジンの問題を解決しようとしましたが、うまくいきませんでした。
基本的に、ネットワーク上で提供される解決策は、通常のウェブサイトの場合にクロスオリジンを許可するため、以下のコードを逆プロキシの設定ファイルに追加するだけです。
set $enable_cors 0;
if ( $enable_cors = 0 )
{
#CORS 設定
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE';
#クッキーの転送を許可するかどうか
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,X-Data-Type,X-Requested-With,X-Data-Type,X-Auth-Token';
}
#ブラウザのoptionsプリフライトリクエストに対して直接200を返す。そうしないと403 forbidden--invalie CORS requestになる
if ( $request_method = 'OPTIONS' ) {
#CORS 設定
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE';
#クッキーの転送を許可するかどうか
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,X-Data-Type,X-Requested-With,X-Data-Type,X-Auth-Token';
return 200;
}