Apache目录列表模式定制个性化界面

发表于:2007-05-25来源:作者:点击数: 标签:
首先请参考:Mod_AutoIndex模块 http://w.yi.org/ftp/FAPM/apache/Apache2/zh/mod/mod_autoindex.html 以下只是展示了其中很少一部分设置的用法,要想获得更好的效果,请自己查看Mod_AutoIndex模块的文档。如果你没有时间,请联系我定制方案。谢谢。 演示:h

首先请参考:Mod_AutoIndex模块
http://w.yi.org/ftp/FAPM/apache/Apache2/zh/mod/mod_autoindex.html 

以下只是展示了其中很少一部分设置的用法,要想获得更好的效果,请自己查看Mod_AutoIndex模块的文档。如果你没有时间,请联系我定制方案。谢谢。

演示:http://w.yi.org/ftp

[code:1:d4bf7f167a]
<Directory "/path/to/you/folder">

#开启目录列表索引模式
Options Indexes

#参数设置
IndexOptions FancyIndexing ScanHTMLTitles 
                      NameWidth=128 DescriptionWidth=256 
                      HTMLTable VersionSort FoldersFirst
#ScanHTMLTitles:搜索HTML标题
#NameWidth:文件命显示字节数
#DescriptionWidth:描述显示字节数
#HTMLTable:允许HTML格式
#FoldersFirst:目录优先

#索引排除选项
IndexIgnore header.html footer.html

#索引头部嵌入文件
HeaderName /data/index/header.html
#索引底部嵌入文件
ReadmeName /data/index/footer.html

#默认索引排序方式
IndexOrderDefault Ascending Date

#关闭服务器标志
ServerSignature Off             

#目录索引文件
DirectoryIndex index.htm     
</Directory>
[/code:1:d4bf7f167a]


[b:d4bf7f167a]以下配置文件内容,演示了如何把基本目录列表信息完整的嵌入到一个HTML网页之中[/b:d4bf7f167a]
[b:d4bf7f167a][color=red:d4bf7f167a]#索引头部嵌入文件 
HeaderName /data/index/header.html [/color:d4bf7f167a][/b:d4bf7f167a]
[code:1:d4bf7f167a]
<!--// 网页基本信息以及修饰配置部分_Start//-->
<!--// 网页基本信息以及修饰配置部分_End//-->
<table>
<tr>
<td>
<!--// 目录内容开始显示部分_Start//-->
[/code:1:d4bf7f167a]

[b:d4bf7f167a][color=red:d4bf7f167a]#索引底部嵌入文件 
ReadmeName /data/index/footer.html [/color:d4bf7f167a][/b:d4bf7f167a]
[code:1:d4bf7f167a]
<!--// 目录内容开始显示部分_EnD//-->
</td>
<td>
<!--// 其他修饰部分,例如我的美美老婆的图片啊//-->
</td>
</tr>
</table>
<!--// 网页尾部基本信息以及修饰配置部分_Start//-->
<!--// 网页尾部基本信息以及修饰配置部分_End//-->
[/code:1:d4bf7f167a]


[b:d4bf7f167a]生成个性化的目录列表页面的过程[/b:d4bf7f167a]
1、读取[b:d4bf7f167a][color=red:d4bf7f167a]#索引头部嵌入文件HeaderName /data/index/header.html [/color:d4bf7f167a][/b:d4bf7f167a]并输出
2、服务器生成目录列表信息并输出
[code:1:d4bf7f167a]
<table><tr><th><img src="/icons/blank.gif" alt="[ICO]" /></th><th><a href="?C=N;O=A">Name</a></th><th><a href="?C=M;O=D">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr><tr><th colspan="5"><hr /></th></tr>
<tr><td valign="top"><img src="/icons/back.gif" alt="[DIR]" /></td><td><a href="/">Parent Directory</a>                                                                                                                </td><td>&</td><td align="right">  - </td></tr>
<tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]" /></td><td><a href="3.PHP-MYSQL/">3.PHP-MYSQL/</a>                                                                                                                    </td><td align="right">11-Nov-2003 13:19  </td><td align="right">  - </td></tr>
<tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]" /></td><td><a href="2.WEB-Server/">2.WEB-Server/</a>                                                                                                                   </td><td align="right">11-Nov-2003 13:19  </td><td align="right">  - </td></tr>
<tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]" /></td><td><a href="1.FreeBSD/">1.FreeBSD/</a>                                                                                                                      </td><td align="right">11-Nov-2003 13:28  </td><td align="right">  - </td></tr>
<tr><td valign="top"><img src="/icons/layout.gif" alt="[DIR]" /></td><td><a href="FAPM/">FAPM/</a>                                                                                                                           </td><td align="right">23-Aug-2004 10:17  </td><td align="right">  - </td><td>FAPM 豪华手册</td></tr>
<tr><td valign="top"><img src="/icons/folder.gif" alt="[DIR]" /></td><td><a href="incoming/">incoming/</a>                                                                                                                       </td><td align="right">28-Sep-2004 13:16  </td><td align="right">  - </td></tr>
<tr><th colspan="5"><hr /></th></tr>
</table>
[/code:1:d4bf7f167a]
3、读取[b:d4bf7f167a][color=red:d4bf7f167a]#索引底部嵌入文件ReadmeName /data/index/footer.html [/color:d4bf7f167a][/b:d4bf7f167a]并输出
以上三个部分的输出组成一个完整的网页,可以看出,基本目录列表信息是动态生成为一段表格的HTML内容,只需要适当定制你的HTML页面,然后把页面分割为头部和尾部,使得基本目录列表信息刚好嵌入到你所指定的位置,那么你就可以任意定制一个花里胡哨的个性化目录列表页面了。

 HonestQiao 回复于:2004-10-06 14:36:47
演示:[url]http://w.yi.org/ftp[/url]






 RTDT 回复于:2004-10-06 16:53:23
老大,多谢,
我有个问题,
上头,下头都能改,就是不知道中间怎么改,那张图片怎么添加进去的?
是不是需要修改apache的源文件,多谢多谢多谢

 laixi781211 回复于:2004-10-11 08:13:52
[quote:e0bcf9d0b2="RTDT"]老大,多谢,
我有个问题,
上头,下头都能改,就是不知道中间怎么改,那张图片怎么添加进去的?
是不是需要修改apache的源文件,多谢多谢多谢[/quote:e0bcf9d0b2]

<!--// 其他修饰部分,例如我的美美老婆的图片啊//-->

 HonestQiao 回复于:2004-10-11 12:19:11
拜托那个文问题的兄弟,我写得很清楚了,你可不可以多看看我写得东西啊,拜托多看看清楚在问问题,。


如果实在不想的话,那么找我定制好了

 zhangr 回复于:2004-10-11 13:45:43
谢谢
HQ老大.
我修改了我的一个叶面效果不错!

[code:1:37cba71300]
    Alias /ln_actions/ "/home/atest/pic/"

    <Directory "/home/atest/pic">
        Options Indexes MultiViews
#       IndexOptions ScanHTMLTitles
#       IndexOptions HTMLTable
#       IndexOptions VersionSort
#       IndexOptions FoldersFirst
        IndexIgnore header.html footer.html bepc.jpg actions defects
        HeaderName /home/atest/pic/header.html
        ReadmeName /home/atest/pic/footer.html
        IndexOrderDefault Ascending Date
        ServerSignature Off
        DirectoryIndex index.htm
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

[/code:1:37cba71300]
但当我想对apache发布的根目录加header 和 footer的时候总是不成功。
加的option都是一样的。为什么就不行呢?
[code:1:37cba71300]
<Directory />
        Options Indexes FollowSymLinks Includes MultiViews
        IndexIgnore header.html footer.html bepc.jpg actions defects
        HeaderName /home/atest/pic/header.html
        ReadmeName /home/atest/pic/footer.html
        IndexOrderDefault Ascending Date
        ServerSignature Off
        DirectoryIndex index.htm
        AllowOverride None
        Order allow,deny
        Allow from all

</Directory>
[/code:1:37cba71300]

不好意思!已经知道了!
是HeaderName和ReadmeName的位置。写的不对,应该是相对于http的根,而不是文件系统的根。
上边的那个之所以没有问题是因为做了alias同时文件系统的路径和http的路径一样,所以才没有问题。 8-)
无论如何谢谢HQ老大的分享! 8-)






 RTDT 回复于:2004-10-12 00:31:33
[quote:b22b72fbc8="HonestQiao"]拜托那个文问题的兄弟,我写得很清楚了,你可不可以多看看我写得东西啊,拜托多看看清楚在问问题,。


如果实在不想的话,那么找我定制好了[/quote:b22b72fbc8]

嘿嘿,不好意思啊,俺已经明白了,就是几个网页的组合,多谢, :em02:  :em02:

 abel 回复于:2004-10-12 03:47:04
到 google 找個叫 mod_layout 的 dso
除了像 Indexes 功能,自動補頭尾,每一個網頁(cgi/php/jsp..)
都可以自動幫你補頁首頁尾,不用在那 include 的半死

 aspbiz 回复于:2004-10-12 10:31:13
右边的那个图片,应该可以有Header和Footer里做文章,

 haohaoo 回复于:2004-10-17 11:36:17
好长一段时间没来看了,老大又有新东西,不错

 flyingrat 回复于:2004-10-27 11:11:18
Description值如何赋予?

 chencao0524 回复于:2004-11-03 17:44:28
我给一个文件赋了Description的中文描述,但是目录浏览显示乱码 为什么?

httpd.conf文件中设置了 AddDefaultCharset off 或者AddDefaultCharset gb2312 都没用
我查看了目录页面的源代码,没有<meta>进行描述,请问版主的页面中是怎样做到Description中文描述的,是不是要改模板?

 dwtxvk 回复于:2004-12-02 05:15:26
HQ老大,要在虚拟主机里实现此法可行吗?
这些都是相对于DocumentRoot的吧

 HonestQiao 回复于:2004-12-03 10:16:26
你自己看看,不是对
[code:1:52784ef87d]
<Directory "/path/to/you/folder"> 
[/code:1:52784ef87d]
的配置吗?

 raygts 回复于:2005-07-04 19:55:39
HQ老大,还是不行啊~~那个header.html 跟footer.html 文件到地怎么样的??我用BSD5.3,APACHE2.0行吗??

 squall1 回复于:2005-07-05 22:35:55
感谢,我终于知道什么配置了。

 bqsc 回复于:2005-07-11 15:29:29
老大什么时候能做个基于HTTP的MYSQL身份验证的教程呢?

 zj5562 回复于:2005-07-13 15:45:34
不错,我要早点发现好了

 Mc_Hill 回复于:2005-09-06 00:56:07
学习了

原文转自:http://www.ltesting.net