h5ai is a modern HTTP web server index for Apache httpd, lighttpd, nginx and Cherokee. The preferred way to report a bug or make a feature request is to create a new issue on GitHub!
Note: please don't use files from the src
folder for installation,
they need to be preprocessed to work correctly!
You'll find a preprocessed package, as well as detailed installation
instructions on the project page.
There are repositories for the latest releases and dev builds. But if you want to build h5ai yourself you need to install the build tool fQuery first:
> npm install -g fquery
This will install fQuery and its command line tool makejs
. Run makejs --help
to see if everything
worked fine. To clone and build the project run the following commands.
You'll find a new directory build
including a fresh zipball.
> git clone git://github.com/lrsjng/h5ai.git
> cd h5ai
> makejs release
h5ai is provided under the terms of the MIT License.
It profits from these great projects: Faenza icon set (GPL), Gnome Symbolic Icon Theme (CC BY-SA 3.0), HTML5 ★ Boilerplate (MIT), jQuery (MIT), jQuery.filedrop (MIT), jQuery.fracs (MIT), jQuery.mousewheel (MIT), jQuery.qrcode (MIT), jQuery.scrollpanel (MIT), markdown-js (MIT), Modernizr (MIT/BSD), modulejs (MIT), Moment.js (MIT), SyntaxHighlighter (MIT/GPL), Underscore.js (MIT)
h5ai uses semantic versioning.
- ...
- removes
aai
mode! - drops support for IE7+8 (simple fallback, same as no javascript)
- uses History API if available (way faster browsing)
- faster thumbnail generation if EXIF thumbnails available
- adds optional custom headers/footers that are propageted to all subfolders
- optional hide parent folder links
- some fixes on previews
- speeds up packaged downloads
- add line wrap and line highlighting (on hover) to text preview
- new design (colors, images)
- now uses scalable images for the interface
- fixes filter (ignore parent folder, display of
no match
) - lots of small fixes
- updates H5BP to 4.2.0
- updates jQuery to 2.0.3
- updates jQuery.mousewheel to 3.1.3
- updates Moment.js to 2.1.0
- updates markdown-js to 0.4.0-9c21acdf08
- updates json2.js to 2013-05-26
- adds
uk
translation by Viktor Matveenko - updates to
pl
translation by Mark
- bug fix concerning API requests in PHP mode
- minor changes in responsive styles
- general changes h5ai directory layout and configuration
- splits configuration file (
config.json
) into filesoptions.json
,types.json
andlangs.json
- localization now in separate files
- adds auto-refresh
- adds drag'n'drop upload (PHP, experimental)
- adds file deletion (PHP, experimental)
- cleans and improves PHP code
- PHP no longer respects htaccess restrictions (so be careful)
- PHP ignore patterns might include paths now
- improves separation between aai and php mode
- improves performance in aai mode
- adds optional binary prefixes for file sizes
- improves filter: autofocus on keypress, clear on
ESC
- download packages now packaged relative to current folder
- download package name changable
- splits type
js
intojs
andjson
- prevents some errors with files > 2GB on 32bit OS
- adds max subfolder size in tree view
- adds ctrl-click file selection
- adds Piwik analytics extension
- temp download packages are now stored in the
cache
-folder and deleted as soon as possible - updates translations
- adds
he
translation by Tomer Cohen - updates 3rd party libs
- fixes misaligned image previews
- adds no JavaScript fallback to PHP version
- fixes duplicate tree entries and empty main views
- adds Google Analytics support (async)
- improves filter (now ignorecase, now only checks if chars in right order)
- adds keyboard support to image preview (space, enter, backspace, left, right, up, down, f, esc)
- adds text file preview and highlighting with SyntaxHighlighter (same keys as img preview)
- adds Markdown preview with markdown-js
- adds new type
markdown
- changes language code
gr
toel
- adds localization for filter placeholder
- adds
hu
translation by Rodolffo - updates to jQuery.qrcode 0.2
- updates to jQuery.scrollpanel 0.1
- updates to modulejs 0.2
- updates to Moment.js 1.7.0
- updates to Underscore.js 1.3.3
- adds image preview
- adds thumbnails for video and pdf
- adds support for lighttpd, nginx and cherokee and maybe other webservers with PHP
- adds folder size in PHP version via shell
du
- fixes some localization problems
- updates info page at
/_h5ai/
- switches to JSHint
- adds lots of config options
- changes in
config.js
andh5ai.htaccess
- fixes js problems in IE 7+8
- hides broken tree view in IE < 9, adds a message to the footer
- removes hash changes since they break logical browser history
- fixes thumbnail size for portrait images in icon view
- fixes problems with file type recognition
- adds an info page at
/_h5ai/
- sort order is preserved while browsing
- removes PHP error messages on thumbnail generation
- fixes PHP some problems with packed download
- adds support for tarred downloads
- changes crumb image for folders with an index file
- adds
index.php
to use h5ai in non-Apache environments - switches from Datejs to Moment.js
- adds underscore.js
- fixes mousewheel problems, updates jQuery.mousewheel to 3.0.6
- updates
lv
translation - adds
ro
translation by Jakob Cosoroabă - adds
ja
translation by metasta - adds
nb
translation by Sindre Sorhus - adds
sr
translation by vBm - adds
gr
translation by xhmikosr
- adds optional QRCode display
- adds optional filtering for displayed files and folders
- updates design
- improves zipped download
- adds support for zipped download of htaccess restricted files
- changes h5ai.htaccess
- custom headers/footers are now optional and disabled by default
- fixes problems with folder recognition in the JS version
- fixes include problems in PHP version
- fixes path problems on servers running on Windows in PHP version
- fixes broken links in custom headers/footers while zipped download enabled
- fixes problems with thumbnails for files with single or double quotes in filename
- improves url hashes
- updates year in
LICENSE.TXT
- updates es translation
- adds
zh-tw
translation by Yao Wei - updates
zh-cn
translation
- h5ai is now located in
_h5ai
to reduce collisions - switches from HTML5 Boilerplate reset to normalization
- adds some style changes for small devices
- configuration (options, types, translations) now via
config.js
- icons for JS version are now configured via
config.js
- sort order configuration changed
- sorting is now done without page reload
- adds
customHeader
andcustomFooter
toconfig.js
- supports restricted folders to some extent
- some style changes on tree and language menu
- fixes total file/folder count in status bar
- adds support for use with userdir (requires some manual changes)
- sorts translations in
options.js
- improves HTML head sections
- refactors JavaScript and PHP a lot
- improves/fixes file selection for zipped download
- fixes scrollbar and header/footer link issues (didn't work when zipped download enabled)
- adds support for ctrl-select
dateFormat
inoptions.js
changed, now affecting JS and PHP versiondateFormat
is localizable by adding it to a translation inoptions.js
- PHP version is now configurable via
php/config.php
(set custom doc root and other PHP related things) - image thumbs and zipped download is disabled by default now, but works fine if PHP is configured
- adds
it
translation by Salvo Gentile and Marco Patriarca - switches build process from scripp to wepp
- fixes security issues with the zipped download feature
- makes zipped download optional (but enabled by default)
- adds zipped download for selected files
- cleans and refactores
- display meta information in bottom bar (icon view)
- adds
zh-cn
translation by Dongsheng Cai - adds
pl
translation by Radosław Zając - adds
ru
translation by Богдан Илюхин
- adds image thumbnails for PHP version
- new option
slideTree
to turn off auto slide in
- changes in
/h5ai/.htaccess
... PHP configuration ...
- fixes initial tree display
- adds sort order option
- adds/fixes some translations
- adds
lv
translation by Sandis Veinbergs
- adds PHP implementation! (should work with PHP 5.2+)
- adds new options
- changes layout of the bottom bar to display status information
- adds language selector to the bottom bar
- quotes keys in
options.js
to make it valid json - changes value of option
lang
fromundefined
tonull
- adds some new keys to
h5aiLangs
- adds browser caching rules for css and js
- adds
pt
translation by Jonnathan - adds
bg
translation by George Andonov
- adds
tr
translation by Batuhan Icoz
- adds
es
translation by Jose David Calderon Serrano
- fixes unchecked use of console.log
- improves performance
- changes license to MIT license, see
LICENSE.txt
- improves tree scrollbar
- fixes problems with ' in links
- fixes problems with XAMPP on Windows (see
dot.htaccess
comments for instructions) - fixes tree fade-in-fade-out effect for small displays (issue #6)
- adds custom scrollbar to tree (issue #6)
- fixes broken links caused by URI encoding/decoding (issue #9)
- adds "empty" to localization (hope Google Translate did a good job here)
- links hover states between crumb, extended view and tree
- fixes size of tree view (now there's a ugly scrollbar, hopefully will be fixed)
- refactores js to improve performance and cleaned code
- adds caching for folder status codes and content
- adds
fr
translation by Nicolas - adds
nl
translation by Stefan de Konink - adds
sv
translation by Oscar Carlsson
- removes slashes from folder labels
- optionally rename parent folder entries to real folder names, see
options.js
- long breadcrumbs (multiple rows) no longer hide content
- error folder icons are opaque now
- refactores js a lot (again...)
- removes shadows
- smarter tree side bar
- refactores js
- adds localization, see
options.js
- refactores js
- adds basic options support via
options.js
- adds comments to
options.js
- adds optional tree sidebar
- details view adjusts to window width
- links icon for *.gz and *.bz2
- disables tree sidebar for now, since it had unwanted side effects
- adds tree sidebar
- some refactorings
- adds better fallback, in case JavaScript is disabled
- rewrites js, fixed middle-button click etc. problems
- refactors css
- sorts, adds and moves icons and images
- updates dot.access
- removes lib versions from file names
- adds 'empty' indicator for icons view
- refactores js
- adds
folderClick
andfileClick
callback hooks - fixes .emtpy style
- includes build stuff, files previously found in the base directory are now located in folder
target
- styles and scripts are now minified
- adds Modernizr 2.0.4 for future use
- updates jQuery to version 1.6.1
- more refactoring in main.js
- refactores a lot, adds some comments
- includes fixes from NumEricR
- adds top/bottom message support, only basicly styled
- fixes croped filenames
- fixes missing .png extension in header
- adds some color to the links
- adds changelog
- adds icon view