0

ブラウザからEC2 AWSサーバーにPOSTリクエストを行いましたが、次のエラーが返されました。AWS EC2でCORSヘッダーを追加する場所

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://www.example.com' is therefore not allowed access. The response had HTTP status code 401.

私はいくつかの研究を行って、私は私のEC2 AWSサーバー上でCORSを有効にする必要があり放してきた - 私は、AWSのドキュメントから

<CORSConfiguration> 
    <CORSRule> 
    <AllowedOrigin>http://www.example1.com</AllowedOrigin> 

    <AllowedMethod>PUT</AllowedMethod> 
    <AllowedMethod>POST</AllowedMethod> 
    <AllowedMethod>DELETE</AllowedMethod> 

    <AllowedHeader>*</AllowedHeader> 
</CORSRule> 
<CORSRule> 
    <AllowedOrigin>http://www.example2.com</AllowedOrigin> 

    <AllowedMethod>PUT</AllowedMethod> 
    <AllowedMethod>POST</AllowedMethod> 
    <AllowedMethod>DELETE</AllowedMethod> 

    <AllowedHeader>*</AllowedHeader> 
</CORSRule> 
<CORSRule> 
    <AllowedOrigin>*</AllowedOrigin> 
    <AllowedMethod>GET</AllowedMethod> 
</CORSRule> 
</CORSConfiguration> 

の線に沿って何かを追加する必要があることを理解します:AWS EC2 CORS

しかし、私は実際にこれを追加する必要があるかどうかは分かりません。 AWSサーバーの知識が限られています。

それはのNeo4jのデシベルだとコールは次のとおりです。

getRequest = function() { 
    $.ajax({ 
     url: 'http://exampleEC2:port/', 
     type: 'POST', 
     dataType: 'JSON', 
     contentType: 'application/json;charset=UTF-8', 
     password: 'xxxxxx', 
     username: 'xxxx', 
     data: dataObject, 
     success: function (data) { 
      console.log("success"); 
     }, 
     error: function(error) { 
      console.log(error); 
     } 
    }); 
}; 

答えて

0

あなたは、サーバー自体にあなたのEC2インスタンスにCORS条件を追加することができます。

Header set Access-Control-Allow-Origin "*" 

または

Header set Access-Control-Allow-Origin "yourexternaldomain.tld" 

私の記憶が正しければ

、CORSは一つだけを持つことができます。これはApacheのEC2インスタンスであると仮定すると、あなたは、任意のドメインまたは1つの特定のドメインを許可するようには.htaccessファイルを編集することができますドメインに関連付けられています。

私はカップル異なると、特定のドメインにアクセス許可することができるように、誰かが.htaccessファイルでの条件付きの宣言が出ていた見つけた:

Stackoverflow: Access-Control-Allow-Origin Multiple Origin Domains?

関連する問題