フォーム画面のリクエスト後、CloudFrontにて403のエラーが発生しています。
内容から、HTTPSでのリクエストでないことが主な原因と記述はあります。
一方で、リクエストのURLを見ると、httpsでリクエストしているように見えます。
原因分かる方いらっしゃいましたら教えて下さい。以下情報です。他必要な情報ありましたらご教示ください。
【詳細事象】
・自作WEBサイトにて、問い合わせフォーム作成。問い合わせ項目入力後、「送信」ボタン押下後に発生
・サーバはNodejsで記載。
・添付画像から、リクエストURLはhttps://で送られているはず。
・AWSのドキュメントを確認し、Cloudfrontでの設定で「ビューワープロトコルポリシー」を「HTTP を HTTPS にリダイレクト」に設定していることを確認
・publicフォルダは以下は、S3にて静的コンテンツを配信
・フォーム送信時のリクエストはPOSTメソッド
【ソースコード】
HTML
<form action="" method="POST" id="form_submit"> <p> ニックネーム*<br> <input class="form-style checkform charcheck" type="text" name="name" required><br> <span class="alertarea"></span> </p> ※以下は省略
Nodejs
app.use("/public/menu/form", require("./routes/index.js")); ※下記のrouterモジュールを呼び出し
nodejs
router.post("/public/menu/form", (req,res) => { const msg = req.body ; ※関係ないので省略 // DynamoDBへのデータPut docClient.put(formparams, function(err, data){ if(err){ console.error("Unable to add formdata", msg.title, ". Error JSON:", JSON.stringify(err, null, 2)); res.sendFile("https://www2-prd-hero-blog.com/public/menu/form/form-failure.html"); }else { console.log("PutItem succeeded:", msg.title); res.sendFile("https://www2-prd-hero-blog.com/public/menu/form/form-success.html"); } }); });
まだ回答がついていません
会員登録して回答してみよう