有些时候我们要做一个个人仓库,但又不喜欢apache/nginx的默认index那种过于朴素的页面。这时候php目录列表程序的作用就发挥出来了。我个人也用过许多类似的程序,但是还是比较偏爱h5ai,因为部署方便,不需要像fancy index那样重新编译nginx,而功能也足够强大,美观更是没话说。DEMO

部署的方法也是相当简单,在作者官网有说明,可能有人不喜欢全英文的……我来简单的说一下。

   一.安装

  1. 把你下载的h5ai程序包解压会看到里面有_h5ai这个文件夹,将其上传到你的web目录(当然也可以上传后再解压): DOC_ROOT/_h5ai.

    访问http://YOUR-DOMAIN.TLD/_h5ai/public/index.php, 这个页面会显示一些依赖之类的,符合代表能使用更多功能。

     

  2. /_h5ai/public/index.php (注意优先级!)添加到默认首页的配置项. 这样h5ai会接管在 DOC_ROOT下所有不含有效首页文件的目录.某些web服务器的修改方法:
    • Apache httpd 2.2/2.4: 在 httpd.conf 或在任意文件夹的 .htaccess 文件中的修改示例:

    • lighttpd 1.4: 在 lighttpd.conf 中的修改示例:

    • nginx 1.2: 在 nginx.conf 中的修改示例:

    • Cherokee 1.2: 在 cherokee.conf 中的修改示例:

  二. 配置

主配置文件是 _h5ai/private/conf/options.json. 你可能想要修改某些列表设置. 当然也有更多设置在_h5ai/private/conf中,你可以看看。

 

  三.自定义安装

把h5ai安装在你想要的web服务器的任意二级目录是可以实现的。这个目录将在显示路径树的时候被认作是根目录。

比如把 _h5ai 复制到 DOC_ROOT/some/folder/_h5ai:

访问 http://YOUR-DOMAIN.TLD/some/folder/_h5ai/public/index.php 来看看是否一切正常。 在这个示例里你需要添加 /some/folder/_h5ai/public/index.php 到你的directory index (和第二部安装差不多)。

  四.修改与优化

           1.修改显示(title)

可能有人发现安装完之后貌似网页标题太长了……这是作者把一些信息都写在里面了,由于作者开源,我们能对其进行修改去除部分不美观的信息(请务必保留部分,建议保留网站右上角的powerbyh5ai-power-by)

只要修改_h5ai/private/php/pages/index.php就行了,一切都很easy。

h5ai-modify-title

         2.加速打开h5ai

有时候你会发现h5ai的打开速度莫名的慢,或者页面已经出来然而文件(夹)名竟然还不显示,为什么?谷歌字体的锅,由于h5ai引用了谷歌的字体库,而虽然谷歌字体在大陆恢复了解析,但是由于dns污染或者运营商问题访问还是有些抽风,所以才会导致这种情况的发生。为了加快打开速度,我们可以替换谷歌字体到国内的镜像源。

h5ai-google-fonts

通过修改fonts.googleapis.com为fonts.geekzu.org(支持https)或fonts.useso.com(不支持https),我们能加快h5ai的打开速度。当然,如果我们要做到最快的打开速度,我们可以使用七牛之类的服务,将静态文件(js;svg……)等都缓存到国内cdn中,然后修改h5ai的源文件来做到引用外部资源。

 

最后,感谢h5ai的作者将如此好的作品开源。


Senraの小窝原创文章,转载请注明来自:H5ai——一个强大美观的目录列表程序