I have been playing with Twisted 12.2.0, and encountered this minor infelicity:
1) Files not at the root of the web server work as expected:
a) putChild("foo", File("some-directory")) works as expected - URL is http://example.com/foo/
b) Navigating to the directory "bar" within "foo" gives a URL of http://example.com/foo/bar/ as expected.
2) Files at the root of the web server wind up with an extra "/" in the URL:
a) putChild("", File("some-directory")) yields a URL of http://example.com// <-- note double slash
b) navigating to the same directory "bar" gives: http://example.com//bar <-- double-slash again...
Conclusion:
I think it would make sense to special the case of the root directory and not output a double "//" in the URL.