Google
 

2006-11-19

SLES 10之Apache定制mod_autoindex的心得

文件/etc/apache2/conf.d/apache2-ftp.conf
Alias /ftp/ "/data/"

<Directory "/data">
Options Indexes
IndexOptions FancyIndexing XHTML HTMLTable ScanHTMLTitles FoldersFirst SuppressRules
IndexIgnore favicon.ico header.html footer.html
HeaderName /header.html
ReadmeName /footer.html
IndexStyleSheet "/linux.css"
IndexOrderDefault Ascending Name
AllowOverride None
Order allow,deny
Allow from all
</Directory>

说明:
/data目录是我的vsftp用户目录,我所有的上传文件均在这个位置。
HTMLTable配置选项是用表的方式输出。
XHTML表示输出的页面是XHTML了。
HeaderName是页面的上半部分。
ReadmeName是页面的上半部分。
SuppressRules可以控制不输出文件或目录列表中的两条水平线(位于列表标题下面及列表底部)。
IndexStyleSheet是输出页面的样式表(linux.css是我从pjanik那里直接拿来进行测试用的),需要注意的是,这是apache2.2.x的特性,如果想在稍早的版本使用样式表,请您将css文件的内容以<style type="text/css"> <style>的形式放在HeaderName文件的开始部分,用于定制您输出页面的样式。
其他几个选项,网上的文档已经说得比较清楚了,我就不献丑了。
需要说明的是HeaderName与ReadmeName是html页面中位于标记<body> </body>之间的内容,不要把其他内容写入这两个文件中,写了也没有用处。

最初的想法来源是OpenOffice.org一个开发者的ftp站点,我经常从这个站点下载源文件及安装程序,前些日子,捷克的OpenOffice.org宗师之一Pavel在其个人博客上发布消息称ftp.linux.cz has new HTTP look!,我当时非常羡慕这个网站的样子,就在想这个Pavel Janík先生是用的什么软件,然后就在sf.net上使劲地搜索,结果没有什么激动人心的收获,只好重新思考了一下,结果发现,原来这是apache的一项配置,从周五晚上一直到周六凌晨,我一直在弄,最终于周六下午把这个配置文件弄好了,最后解决的是SuppressRules选项,如果有这个选项的话,那么就不会在表中多出两行来,这上下两个空行非常令人不舒服,尤其是采用HTMLTable格式时,我还是从apache网站上下载了源代码之后,看了看文件mod_autoindex.c,才搞明白这个配置选项的用途的。

标签: ,

0 条评论:

发表评论

<< 主页