定制Apache索引样式

    Apache提供了IndexIgnore、IndexOptions、AddIcon、AddIconByType、 AddIconByEncoding、AddAlt、AddAltByType、AddAltByEncoding、DefaultIcon、 ReadmeName、 HeaderName和AddDescription 等指令来配置是否使用以及如何使用自动索引目录功能。

下面就使用的几个命令做一个详细的介绍并附上代码;

1. IndexIgnore 指令
语法:IndexIgnore file [ file ] …
功能:当自动索引目录的时候隐藏列表中指定的文件

IndexIgnore . html

上面这个示例指令表示,在自动索引目录下内容的时候,不要显示该文件夹下的HTML文件。

2. IndexOptions 指令

语法:IndexOptions [+|-] option [[+|-] option ] ...
功能:自动索引目录时的各种配置选项
示例:IndexOptions SuppressSize
上面这个示例表示,在自动索引目录中显示文件大小列。  FancyIndexing : 对每种类型的文件前加上一个小图标以示区别。
IconsAreLinks :图标成为一个链接。默认情况下,目录下的文件名作为一个链接可供人们点击进行下载。但是人们可能对更直观图标有爱好。这个选项开启后,人们可以通过点击文件名前的图标来下载相应的文件,开启这个选项需要同时开启FancyIndexing。
ScanHTMLTitles :如果您的列表目录下有html文件,开启这个选项后,Apache会从这些html文件里面找到它们的title,并把title的内容作为文件的介绍来显示。
SuppressLastModified :如果打开这个选项,文件的最后修改日期将作为一个列显示。
SuppressSize :如果打开这个选项,文件的大小将作为一个列显示
SuppressDescription :如果打开这个选项,文件的描述将作为一个列显示,之后可以通过AddDescription指令指定特定的文件(或文件类型)的描述。

3. AddIcon 指令
语法:AddIcon icon name [ name ] ...
功能:对 name指定的文件类型使用icon图标

AddIcon /icons/dir.gif ^^DIRECTORY^^ 
AddIcon /tmp/icons/php.png .php

上面的示例说明,如果列表中的文件是一个目录,则使用/icons/dir.gif作为它的图标显示在文件(目录也是一种文件)名前面。

4. DefaultIcon 指令
语法:DefaultIcon url-path
功能:自动索引的目录将在没有匹配任何 AddIcon 指令的图像位置显示 DefaultIcon 。

DefaultIcon /icon/unknown.gif

上例说明,如果有的文件类型没能通过AddIcon类指令匹配到相对应的icon的时候,显示icon的位置将会使用/icon/unknown.gif文件。

5.修改图标尺寸

系统默认就是图片的默认大小,我们可以根据自己的需要做相应的变动,我这里是24

IndexOptions IconHeight=24
IndexOptions IconWidth=24

下边是全部代码,第一部分是对整个文件夹的设置,第二部分是对单个文件夹的设置,我在这里忽略了tmp文件夹,因为这里是我存放图片的地址;

<Directory />
  IndexOptions IconHeight=24
  IndexOptions IconWidth=24
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>

<Directory "E:/OpenStudy/www">
  Options Indexes FollowSymLinks
  IndexOptions FancyIndexing FoldersFirst
  AddDefaultCharset utf-8
  ServerSignature Off
  AllowOverride None
  AddIcon /tmp/icons/back.png ..
  AddIcon /tmp/icons/folder.png ^^DIRECTORY^^
  AddIcon /tmp/icons/html.png .html
  AddIcon /tmp/icons/php.png .php
  DefaultIcon /tmp/icons/default.png
  IndexIgnore /tmp
  Order allow,deny
  Allow from all
</Directory>
posted @ 2009-09-07 16:02  Raffia  阅读(1410)  评论(0编辑  收藏  举报