• Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint
Share this Page URL

Chapter 20. Server Performance > Use a Trailing Slash When Requesting a Directo...

20.12. Use a Trailing Slash When Requesting a Directory

A URL pointing to a directory is technically supposed to end in a slash to indicate that it refers to a directory and not explicitly to a file. Nonetheless, most users leave off the slash, leaving it up to the server to figure out that the user is requesting a directory. Servers figure it out, but they have to go through the step of looking for an ordinary file which they don't find, and this slows things down. They could then give you the index file for the directory you gave them. In practice, servers just respond with a redirect to the client, adding to network traffic and delaying the eventual response. It would be better for your server if users provided the correct syntax to the server, so if you publish a URL or embed links in HTML, use the correct syntax, e.g. http://www.oreilly.com/catalog/. For example, Apache 1.2.4 responds with an HTTP redirect, i.e., sending a Location: URL back to the client, to the same URL but with a slash appended. If we request a directory named dir without the trailing slash from a server at www.oreilly.com, this is what we would see on the network:

% telnet www.oreilly.com 80
Connected to www.oreilly.com.
Escape character is '^]'.
GET /catalog HTTP/1.0
HTTP/1.1 301 Moved Permanently
Date: Thu, 14 May 1998 03:41:58 GMT
Server: Apache/1.2.4
Location: http://www.oreilly.com/catalog/
Connection: close
Content-Type: text/html
<TITLE>301 Moved Permanently</TITLE>
<H1>Moved Permanently</H1>
The document has moved <A HREF="http://www.oreilly.com/catalog/">here</A>.<P>
Connection closed by foreign host.




Not a subscriber?

Start A Free Trial

  • Creative Edge
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint