One of the choices a web server administrator has to make when he configures a web server is what to do with directories in which his content suppliers do not put a home page. Does he want to provide an error response (such as a "404" or "403" page), or does he wish to provide a directory listing?
A directory listing is useful - VERY useful - for developers on test systems as it lets them see what's there and navigate at early testing stages, but conventional wisdom is to turn the faciity OFF on live web servers on the internet
and indeed we have it turned off here, even though we also have ensured there's a home page in every directory except one .... exception to be explained in a minute.
To turn indexes off for the whole web site, the web administrator ensures that
Options Indexes
is not specified in his httpd.conf configuration file.
If overrides are allowed for individual directories, the a file called .htaccess can be placed in any directory that SHOULD be allowed to produce an automated index - simply put the Options line I gave above in a file of that name. But why on earth would you want to?
This morning, the postman delivered a heavy weight of papers which I had requested under the Freedom of Information act. A lot of documents to sift, and I've one or two railway-minded friends (this being an issue with the local train service) who wanted to see them rather quickly. So - a new directory on the server, an upload of a .pdf file, and added .htacess and I can simply point them at
http://www.wellho.net/dft_foi and they can have a quiet evening reading about whether or not the Bristol to Oxford train should be re-introduced, and how much the Train Operating Company here abouts askes the government to pay to maintain our Melksham service. Oh - there's also a summary
here if you don't want to wade through hundreds of pages like I've been doing this afternoon!
(written 2006-09-02)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
A603 - Web Application Deployment - Further httpd Configuration [345] Spotting a denial of service attack - (2005-06-12)
[466] Separating 'per instance' data from binaries and web sites - (2005-10-16)
[526] Apache httpd - serving web documents from different directories - (2005-12-12)
[550] 2006 - Making business a pleasure - (2006-01-01)
[631] Apache httpd to Tomcat - jk v proxy - (2006-03-03)
[649] Denial of Service ''attack'' - (2006-03-17)
[662] An unhelpful error message from Apache httpd - (2006-03-30)
[755] Using different URLs to navigate around a single script - (2006-06-11)
[934] Clustering, load balancing, mod_rewrite and mod_proxy - (2006-11-21)
[1009] Passing GET parameters through Apache mod_rewrite - (2006-12-27)
[1080] httpd.conf or .htaccess? - (2007-02-14)
[1121] Sharing the load with Apache httpd and perhaps Tomcat - (2007-03-29)
[1207] Simple but effective use of mod_rewrite (Apache httpd) - (2007-05-27)
[1351] Compressing web pages sent out from server. Is it worth it? - (2007-09-14)
[1355] .php or .html extension? Morally Static Pages - (2007-09-17)
[1377] Load Balancing with Apache mod_jk (httpd/Tomcat) - (2007-10-02)
[1381] Using a MySQL database to control mod_rewrite via PHP - (2007-10-06)
[1551] Which modules are loaded in my Apache httpd - (2008-02-23)
[1554] Online hotel reservations - Melksham, Wiltshire (near Bath) - (2008-02-24)
[1564] Default file (MiMe types) for Apache httpd and Apache Tomcat - (2008-03-04)
[1566] Strange behaviour of web directory requests without a trailing slash - (2008-03-06)
[1619] User and Group settings for Apache httpd web server - (2008-04-22)
[1636] What to do if the Home Page is missing - (2008-05-08)
[1707] Configuring Apache httpd - (2008-07-12)
[1762] WEB-INF (Tomcat) and .htaccess (httpd) - (2008-08-20)
[1767] mod_proxy and mod_proxy_ajp - httpd - (2008-08-22)
[1778] Pointing all the web pages in a directory at a database - (2008-08-30)
[1939] mod_proxy_ajp and mod_proxy_balancer examples - (2008-12-13)
[1954] mod_rewrite for newcomers - (2008-12-20)
[1955] How to avoid duplicating web page maintainance - (2008-12-20)
[1974] Moving a directory on your web site - (2009-01-03)
[2060] Database connection Pooling, SSL, and command line deployment - httpd and Tomcat - (2009-03-01)
[2272] Monitoring and loading tools for testing Apache Tomcat - (2009-07-07)
[2478] How did I do THAT? - (2009-10-26)
[2900] Redirecting a page - silent, temporary or permanent? - (2010-08-03)
[3133] An image from a website that occasionally comes out as hyroglyphics - (2011-01-14)
[3449] Apache Internal Dummy Connection - what is it and what should I do with it? - (2011-09-19)
[3635] Parse error: parse error, unexpected T_STRING on brand new web site - why? - (2012-03-03)
[3862] Forwarding a whole domain, except for a few directories - Apache http server - (2012-09-17)
[3955] Building up from a small PHP setup to an enterprise one - (2012-12-16)
[4001] Helping search engines with appropriate 400 error codes - (2013-02-11)
[4307] Identifying and clearing denial of service attacks on your Apache server - (2014-09-27)
Some other Articles
Strikingly busyThe train returns for a few weeksFitting our bathroomsMorgans HillTo list a directory under httpd on a web server, or not?Eventful evening - a lesson in looking after contactsEmergency First Aid TrainingLighter momentsStaff MeetingBath - a tourist city on our doorstep