O'Reilly logo

Mac OS X Hacks by Rael Dornfest, Kevin Hemenway

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Directory Aliasing, Indexing, and Autoindexing

A few more Apache configuration hacks involving creating an alias to a file outside the normal Apache document hierarchy and customizing the look-and-feel of directory listings.

When it comes to URLs that end in slashes and resolve to a directory on your web site, Apache can serve data two different ways. The most common is to serve the directory index, a list of filenames that can be used in place of the directory slash. The other possibility is to have Apache generate a bland list of filenames. In this hack, we’ll talk about modifying the directory index to match your needs, as well as making that bland autoindex more attractive.

Aliases

Before we begin indexes, let’s talk about aliasing. If you’ve read [Hack #92], you’ll know a ScriptAlias directive is a way to map a URL to a location on our hard drive. You can read more about the other capabilities of Apache’s mod_alias at the Apache web site (http://httpd.apache.org/docs/mod/mod_alias.html), but here’s a simple example of making /Users/morbus/Pictures/ accessible as http://127.0.0.1/morbus/pictures/:

Alias /~morbus/pictures/ "/Users/morbus/Pictures/"

When creating aliases like this, you want to be careful about permissions. Mac users have never had to deal with permissions before, so they can be an interesting thing to muddle through. We won’t get into a detailed description here, but in a simplified nutshell:

  • User directories like Pictures, Library, Music, and so forth are ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required