このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
Reason: CORS header 'Access-Control-Allow-Origin' does not match 'xyz'
理由
Reason: CORS header 'Access-Control-Allow-Origin' does not match 'xyz'
In this article
エラーの原因
リクエストを作成しているオリジンが、Access-Control-Allow-Origin ヘッダーによって許可されたオリジンのいずれにも一致しないことを表します。このエラーは、レスポンスに複数のAccess-Control-Allow-Origin ヘッダーが含まれていると発生することがあります。
コードが CORS リクエストを使用してアクセスしているサービスが管理下にあるのであれば、Access-Control-Allow-Origin ヘッダーがそのアクセス元が含むように構成されていること、及びそのヘッダーがレスポンス内に 1 つしか含まれていないことを確認してください。ヘッダー自体はコンマ区切りで複数のオリジンを受け付けるので、新しいオリジンを追加することは難しくはありません。
例えば Apache では、サーバー構成(の中の<Directory>,<Location>,<Files>,<VirtualHost> のうち適切な節)に次のような行を追加してください。構成はふつう、.conf ファイルまたは(一般的な名前はhttpd.conf やapache.conf)または.htaccess ファイルにあります。
警告:オリジンの一部として HTTPS または HTTP プロトコルを記載する必要があります。
apacheconf
Header set Access-Control-Allow-Origin 'origin'Nginx では、このヘッダーを設定するコマンドは次の通りです。
nginx
add_header 'Access-Control-Allow-Origin' 'origin'