This contract is equivalent to (->*(url?)(path?(listofpath-piece?))).
The returned path? is the path on disk. The list is the list of
path elements that correspond to the path of the URL.
The url->path/c returned by this procedure considers the root
URL to be base. It ensures that ".."s in the URL
do not escape the base and removes them silently otherwise.
Runs the underlying url->path, but only returns if the path
refers to a file that actually exists. If it is does not, then the suffix
elements of the URL are removed until a file is found. If this never occurs,
then an error is thrown.
This is primarily useful for dispatchers that allow path information after
the name of a service to be used for data, but where the service is represented
by a file. The most prominent example is obviously servlets.
Runs the underlying url->path but will only return if the
path, when considered as a string, matches the regex. This is
useful to disallow strange files, like GIFs, from being considered
servlets when using the servlet dispatchers. It will return a
exn:fail:filesystem:exists? exception if the path does not
match.