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>