-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Archived non-absolute HTTP redirects are not replayed correctly #456
Comments
I was making some changes in the Reconstructive after which rewriting of the |
Ok, are you planning on merging those changes into ipwb soon or is the work needed in Reconstructive extensive? |
I will perhaps merge it tomorrow. I have made necessary changes, but did not get a chance to test it. I left those uncommitted changes in my office machine and came home. |
It looks like it is not possible currently as necessary information (for example the Related discussions: |
@ibnesayeed Is the Location header accessible to the SW when the URL is not absolute? |
No, for the response type |
@ibnesayeed I think this ticket is still currently an issue. This may be due to our current implementation of server-side rewriting of the location header to To fix this, we need to "MUST process the redirection as if the value inherits the fragment component of the URI reference used to generate the request target". (RFC7231) |
Changes in #461 might fix it, but they need to be tested in different scenarios. |
We need to handle non-URI (path) redirects on server-side, as the client is unable to access location header. |
According to RFC7231, the HTTP location response header may be a URI fragment, e.g., Location:
/foo.html
.When replaying a redirect from http://localhost:5000/memento/20180727203127/example.com/ to http://localhost:5000/memento/20180727203127/example.com/anotherURI as in https://github.com/oduwsdl/ipwb/blob/master/ipwb/samples/warcs/redirectRelative.warc, the user is instead redirected to http://localhost:5000/memento/20180727203127//anotherURI.
This has to do with the logic of URI resolution to the replay system. Ideally, the ServiceWorker would handle this but it does not appear to do so.
The text was updated successfully, but these errors were encountered: