Can . (period) be part of the path part of an URL?

Moffe picture Moffe · Sep 26, 2011 · Viewed 24.8k times · Source

Is the following URL valid?

http://www.example.com/module.php/lib/lib.php

According to http://tools.ietf.org/html/rfc1738 section the hpath element of an URL can not contain a '.' (period). There is in the above case a '.' after "module" which is not allowed according to RFC1738.

Am I reading the RFC wrong or is this RFC succeed by another RFC? Some other RFC's allows '.' in URLs (http://tools.ietf.org/html/rfc1808).

Answer

Adam Batkin picture Adam Batkin · Sep 26, 2011

I don't see where RFC1738 disallows periods (.) in URLs. Here are some excerpts from there:

hpath          = hsegment *[ "/" hsegment ]
hsegment       = *[ uchar | ";" | ":" | "@" | "&" | "=" ]
uchar          = unreserved | escape
unreserved     = alpha | digit | safe | extra
safe           = "$" | "-" | "_" | "." | "+"

So the answer to your question is: Yes, http://www.example.com/module.php/lib/lib.php is a valid URL.