[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Lynx-dev] Cannot open: https://m.medicalxpress.com/page2.html
From: |
Bela Lubkin |
Subject: |
Re: [Lynx-dev] Cannot open: https://m.medicalxpress.com/page2.html |
Date: |
Wed, 14 Aug 2019 15:40:36 -0700 |
Ian Collier wrote:
> The link is written (some syntax elided):
>
> <a href="./page2.html">load more</a>
>
> Most other browsers, including links, don't copy this dot into the URL
> when following the link, so they don't experience a problem.
>
> Is Lynx correct to copy the dot? I think not. According to RFC 1808
> in Section 4 where it describes an algorithm for resolving relative
> URLs, in Step 6:
>
> a) All occurrences of "./", where "." is a complete path
> segment, are removed.
>
> This carries through into RFC 3986 where section 5.2.4 describes a
> "Remove Dot Segments" algorithm.
Lynx appears to be slightly at fault here.
However, their web server is grossly at fault. '/./' in a URL is just a
reference to the current directory; www.foo.bar/baz/bletch.html should
be understood identically to www.foo.bar/./baz/./bletch.html. I don't
remember ever having heard of an HTTP server which gets this wrong,
before today. (Server claims to be running some unspecified version of
Apache. I don't believe any version of Apache is ever likely to have
had this problem. There may be a default rewrite rule that is always
present, and they've somehow managed to delete?)
The third (probably inadvertent) culprit is the web page / page author
itself. IF one is in the unique circumstance of using an incompetent
HTTP server which chokes on '.' references in a path, one should
definitely avoid constructing such paths. The reference should read:
<a href="page2.html">load more</a>
======
For practical purposes, regardless of whose fault this is: having
arrived at https://m.medicalxpress.com/./page2.html (and received
a 404), you can fix the situation by hitting 'E' (edit current
page URL); arrow back far enough to erase a './', leaving only
https://m.medicalxpress.com/page2.html; hit Enter, and you're there.
>Bela<
Re: [Lynx-dev] Cannot open: https://m.medicalxpress.com/page2.html, Alejandro Lieber, 2019/08/14