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< _______________________________________________ Lynx-dev mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/lynx-dev
