h5ai

a modern HTTP web server index

licenseMITgithublrsjng/h5ai
0.26.1

h5ai is a modern file indexer for HTTP web servers with focus on your files. Directories are displayed in a appealing way and browsing them is enhanced by different views, a breadcrumb and a tree overview. Initially h5ai was an acronym for HTML5 Apache Index but now it supports other web servers too.

See the demo directory with most features enabled.

Works fine with Apache httpd, lighttpd, nginx and Cherokee. Best user experience with modern browsers like Chrome, Firefox, Safari, Opera and IE10+, but a static fallback is provided for older browsers or if JavaScript is disabled.

Features

There are lots of optional extensions and configuration options to customize the web appearance of your directory listings. All markup is valid HTML5 spiced up with CSS3 and finest JavaScript to build a fresh but minimal user interface and a user experience that focuses on your files.

Some of the optional features:

Installation

Requires PHP 5.3+

  1. Copy folder _h5ai to the document root directory of the web server and visit http://YOUR-DOMAIN.TLD/_h5ai/. This page shows some hints on the server's capabilities.

  2. Add /_h5ai/server/php/index.php (note the leading slash!) to the end of the default index-file list. In this way h5ai will manage all directories that don't have a valid index file.

Examples of the second step for all tested web servers:

Configuration

The main configuration file is _h5ai/conf/options.json. You might want to change some of the documented settings. But there are some more files in the _h5ai/conf folder you might have a look at.

Important!

Please note that h5ai does not work with aliased folders in general (as available in Apache httpd). Aliased folders make it impossible to map URLs to file system folders. Actually any web server specific things aren't supported. That includes access restrictions! Best chance to make restricted areas work and secure might be to place folder _h5ai completely inside that resticted area. Use it at your own risk.

Hints

Custom installation

It's possible to install h5ai into any sub directory of your web server's document root directory. This directory will then be considered the root directory when indexing your files.

For example copy folder _h5ai to [DOC_ROOT]/some/folder/_h5ai and then browse to http://YOUR-DOMAIN.TLD/some/folder/_h5ai/ to see if everything works fine. This page will show you what additional index file entry you have to add to your default index file list (as in step 2 above). For this example that would be /some/folder/_h5ai/server/php/index.php.