Tips and Tricks HQ Support Portal › Forums › WP eStore Forum › Strange problems with Amazon S3 URLs expiring
Tagged: amazon s3
- This topic has 31 replies, 3 voices, and was last updated 9 years, 7 months ago by mga.
-
AuthorPosts
-
March 19, 2015 at 9:52 pm #69152adminKeymaster
I will think of something for this.
April 2, 2015 at 4:51 pm #69153mgaMemberI am still having customers getting “access denied”, “Request has expired” message from Amazon S3.
download debug message:
[04/01/2015 10:33 PM] – Status : Link details retrieved using file key. Link ID: 8386
[04/01/2015 10:33 PM] – Status : Global download limit counting is enabled. Count limit: 99 Access count: 0
[04/01/2015 10:33 PM] – Status : Checking global download expiry time.
[04/01/2015 10:33 PM] – FAILURE : Global download expiry time check failed. This link has expired
In eStore settings, I have set the duration of download link to be 340 hours, and download limit count to be 99 times. Should I set the hours to be a larger number?
Should I set AWS S3 Presigned URL Expiry to be higher than 600?
What else can I do about this? Customers are complaining and I don’t know what to do.
What should I tell them?
April 2, 2015 at 5:08 pm #69154wzpModerator[04/01/2015 10:33 PM] – FAILURE : Global download expiry time check failed. This link has expired
The expiration message in the log is for the encrypted link; so it’s affected by the 340 hours or 99 times; whichever comes first.
This is different from the error message you originally posted at the beginning of the thread. That message is only if it passes the 340 hour or 99 times test, and came from Amazon. So, now we are dealing with a different expiration problem.
So, 340 hours is 14 days. For the person who is complaining, can you verify if the link was used within 14 days or less than 99 times?
April 2, 2015 at 5:16 pm #69155mgaMemberYes, the link was created the same day as they got the error message. I don’t think they would have clicked the link 100 times before they told me it’s expired.
It seems only some people have this issue, but at least one of them is getting it every time I generate a new link.
It is the same message as I started the thread with:
AccessDenied
<Message>Request has expired</Message>April 2, 2015 at 6:06 pm #69156wzpModeratorIt seems only some people have this issue, but at least one of them is getting it every time I generate a new link.
Maybe the clock on your server is having problems???
- The “AccessDenied” message comes from Amazon, if the clock difference between your server and Amazon’s servers is too great.
- The “Global download expiry time check” message comes from the plugin, if the clock difference between when the link was originally created and when it was used is too great.
What kind of hosting package and hosting provider are you using?
April 2, 2015 at 6:39 pm #69157mgaMemberI’m using WP Engine. How do I check the settings on WP Engine vs Amazon?
April 2, 2015 at 7:52 pm #69158wzpModeratorCreate a page someplace on your server, containg the code from here:
[http://www.javascriptkit.com/script/script2/servertime.shtml]
Then run the code and compare the results (accounting for timezone differences) against this page:
[http://www.time.gov]
April 2, 2015 at 8:03 pm #69159mgaMemberWP Engine told me just now their servers run on UTC time.
April 2, 2015 at 8:16 pm #69160mgaMemberOk, there is a big time difference.
http://www.time.gov time is 14:15 and my page is 20:15.
I assume I should change this in wordpress / General Settings then so they are the same?
I have the wordpress timezone set to the timezone I’m in, but that isn’t reflected on the javascript page I set up as you instructed. So I need to ask WP Engine how to get this fixed, is that correct?
Or do I change the time on my Amazon bucket? I don’t know if that’s possible or how I do that.
April 2, 2015 at 8:26 pm #69161wzpModeratorThe difference you see is due to timezones. Don’t do anything yet. Let’s see if @admin or anyone else has any input.
April 2, 2015 at 8:38 pm #69162mgaMemberOk. When I go to time.gov, it shows my local timezone, by the way.
I found this on Amazon forums: “all times used on Amazon webservices are UTC.”
So since my provider’s server is also set to UTC, wouldn’t that mean there is no time/clock issue then? Something else is causing the “request expired” message?
April 3, 2015 at 1:02 pm #69163wzpModeratorBecause the problem seems to be limited to “some users,” and “one user” in particular; we think the problem is not necessarily with the software.
We think you need to gather more statistical information that tries to corrolate the problem to the users; such as (but not inclusive to):
- Particular product ID information.
- Geographic location of user.
- Time between link generation and link “redemption.”
As for the user for which it “happens everytime,” since you have the number of clicks setting so high; try manually generating a link, and try it once yourself (but don’t tell him) before emailing it to him. It would be interesting to see if the exact same link works for you, but not him.
April 3, 2015 at 4:08 pm #69164mgaMemberI have about 6-8 people per month who are having trouble. Of those, 3-4 can not download at all, for the remaining, they can usually get by after I’ve sent them several links. They often complain it is very slow too.
When I test the link I send to them, it always works perfectly. I have to generate new links for these people, since they get the request expired message.
As for geographical location, the last 3 people were all in the USA.
Today I changed the AWS S3 Presigned URL Expiry from 600 to 6000 and sent new links to the last 2 people who had problems. They said it worked perfectly this time. So maybe that will be the solution, just keep setting to a high number?
April 3, 2015 at 4:24 pm #69165wzpModerator- Changing the Presigned URL Expiry should only affect the users receiving the “AccessDenied” message; not the ones getting the “Global download expiry time check” messages.
- Where is the server’s (not your) IP located?
- “6-8 people per month” out of how many?
- Of the 6-8 people, how many get “AccessDenied” and how many get “Global download expiry time check” errors?
You get the picture; We’re trying to establish some kind of percise statistical baseline for the problem.
If you haven’t installed this yet, please do so:
https://www.tipsandtricks-hq.com/ecommerce/wp-estore-addon-file-download-stats-2500
It will help you gather information better.
April 3, 2015 at 4:43 pm #69166mgaMemberThey all get the same message, which says Access Denied AND Request has expired. The error message is an XML style message, so my customers sometimes get confused and start describing the XML formatting, etc, but in the end, it’s always the “request has expired” message.
Around 60-70 people per month, so I guess it’s around 10% with problems. Some months less, some months more.
Server ip: 173.255.225.141
Added the stats add-on today.
-
AuthorPosts
- You must be logged in to reply to this topic.