node做网站/软文网
有些时候我们要做一个个人仓库,但又不喜欢apache/nginx的默认index那种过于朴素的页面。这时候php目录列表程序的作用就发挥出来了。我个人也用过许多类似的程序,但是还是比较偏爱h5ai,因为部署方便,不需要像fancy index那样重新编译nginx,而功能也足够强大,美观更是没话说。DEMO
部署的方法也是相当简单,在
一.安装
把你下载的h5ai程序包解压会看到里面有_h5ai这个文件夹,将其上传到你的web目录(当然也可以上传后再解压): DOC_ROOT/_h5ai.
DOC_ROOT
├─ _h5ai
├─ your files
└─ and folders
1
2
3
4
DOC_ROOT
├─_h5ai
├─yourfiles
└─andfolders
访问http://YOUR-DOMAIN.TLD/_h5ai/public/index.php, 这个页面会显示一些依赖之类的,符合代表能使用更多功能。
把 /_h5ai/public/index.php (注意优先级!)添加到默认首页的配置项. 这样h5ai会接管在 DOC_ROOT下所有不含有效首页文件的目录.某些web服务器的修改方法:
Apache httpd 2.2/2.4: 在 httpd.conf 或在任意文件夹的 .htaccess 文件中的修改示例:
DirectoryIndex index.html index.php /_h5ai/public/index.php
1
DirectoryIndexindex.htmlindex.php/_h5ai/public/index.php
lighttpd 1.4: 在 lighttpd.conf 中的修改示例:
index-file.names += ('index.html', 'index.php', '/_h5ai/public/index.php')
1
index-file.names+=('index.html','index.php','/_h5ai/public/index.php')
nginx 1.2: 在 nginx.conf 中的修改示例:
index index.html index.php /_h5ai/public/index.php;
1
indexindex.htmlindex.php/_h5ai/public/index.php;
Cherokee 1.2: 在 cherokee.conf中的修改示例:
vserver!1!directory_index = index.html,index.php,/_h5ai/public/index.php
1
vserver!1!directory_index=index.html,index.php,/_h5ai/public/index.php
二. 配置
主配置文件是 _h5ai/private/conf/options.json. 你可能想要修改某些列表设置. 当然也有更多设置在_h5ai/private/conf中,你可以看看。
三.自定义安装
把h5ai安装在你想要的web服务器的任意二级目录是可以实现的。这个目录将在显示路径树的时候被认作是根目录。
比如把 DOC_ROOT/some/folder/_h5ai:
DOC_ROOT
└─ some
└─ folder
├─ _h5ai
├─ your files
└─ and folders
1
2
3
4
5
6
DOC_ROOT
└─some
└─folder
├─_h5ai
├─yourfiles
└─andfolders
访问 http://YOUR-DOMAIN.TLD/some/folder/_h5ai/public/index.php 来看看是否一切正常。 在这个示例里你需要添加 /some/folder/_h5ai/public/index.php 到你的directory index (和第二部安装差不多)。
四.修改与优化
1.修改显示(title)
可能有人发现安装完之后貌似网页标题太长了……这是作者把一些信息都写在里面了,由于作者开源,我们能对其进行修改去除部分不美观的信息(请务必保留部分,建议保留网站右上角的powerby)
只要修改_h5ai/private/php/pages/index.php就行了,一切都很easy。
2.加速打开h5ai
有时候你会发现h5ai的打开速度莫名的慢,或者页面已经出来然而文件(夹)名竟然还不显示,为什么?谷歌字体的锅,由于h5ai引用了谷歌的字体库,而虽然谷歌字体在大陆恢复了解析,但是由于dns污染或者运营商问题访问还是有些抽风,所以才会导致这种情况的发生。为了加快打开速度,我们可以替换谷歌字体到国内的镜像源。
通过修改fonts.googleapis.com为fonts.geekzu.org(支持https)或fonts.useso.com(不支持https),我们能加快h5ai的打开速度。当然,如果我们要做到最快的打开速度,我们可以使用七牛之类的服务,将静态文件(js;svg……)等都缓存到国内cdn中,然后修改h5ai的源文件来做到引用外部资源。
最后,感谢h5ai的作者将如此好的作品开源。