This distribution is not configured to allow the HTTP request method that was used for this request. The distribution supports only cachable requests.
I have configure the website to only accept https on amazon cloudfront. In a nutshell, you have a php login form, and upon successful login it redirects the user as follow:
if(isset($_POST['login'])){ [...] echo "<script>window.open('coursePayment.php?crs_id=$crs_id','_self')</script>";
below is the form:
<form style="margin-top:-20px" method='post' action='' class='form-horizontal' role='form'> <input type="hidden" id="couponCodeLogin" name="couponCodeLogin"> <input type="hidden" id="couponCodeLoginAmount" name="couponCodeLoginAmount"> <br><br> <div class="group"> <input type='text' class='form-control' name='email' required> <span class="highlight"></span> <span class="bar"></span> <label>Email</label> </div> <div class="group"> <input type='password' class='form-control' name='pass' required> <span class="highlight"></span> <span class="bar"></span> <label>Password</label> </div> <h5 style="color:#FF6400; cursor:context-menu; margin-top:0px" class="displayForgotPassword">Forgot your password? Click here to retrieve it.</h5><br> <input type='submit' id='moreInfoButton' name='login' value='Continue' class='btn btn-danger'> </form>
This error happens because CloudFront isn't configured to accept an HTTP request it's being sent (like POST
or PATCH
).
To fix it, change your CloudFront distributions settings to accept all HTTP methods.
To do that, click on the Behaviors
tab of your CloudFront distribution, select the default behavior, click Edit
, change the Allowed HTTP Methods
to GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE
, then click Yes, Edit
in the bottom right to save your changes.
It may take several minutes for your CloudFront distribution to propagate the changes.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With