Matthias Buelow <mkb@incubus.de> wrote:
+---------------
| Joe Marshall <jrm@ccs.neu.edu> writes:
| >reasonable (albeit unlikely) file name in unix. Simply concatenating
| >a filename to a URI may lead to an illegal URI, so we need to encode
| >the file name. But if the filename has a hierarchical relative path
|
| Well, the URI RfC scheme would only have to be observed when using
| URIs that "connect" to the outside world (for example, when doing http
| requests.) That wouldn't be necessary for filesystem stuff, where
| anything following a "file://" and seperated with "/" would be
| permissible (except NUL).
+---------------
Careful! According to the RFCs, even the "file:" scheme requires a
"host" part! That's why "file:/tmp/foo" and "file://tmp/foo" are both
technically illegal[1]. If you want to refer to a file on the local
host you can write "file://localhost/tmp/foo", or as a special case
called out in the RFCs, as "file:///tmp/foo".[2] See RFCs 1738 & 3986.
-Rob
[1] Even though some browsers accept one but not the other -- and
*which* is accepted is browser-dependent!
[2] All browsers I have tested handle this form properly.
-----
Rob Warnock <rpw3@rpw3.org>
627 26th Avenue <URL:http://rpw3.org/>
San Mateo, CA 94403 (650)572-2607