WebIDX es un motor de búsqueda del lado del cliente para sitios web estáticos.
Funciona utilizando un script Perl simple (WebIDX.PL) para generar una base de datos SQLite que contiene un índice de archivos HTML estáticos. La base de datos SQLite se publica junto con el contenido estático.
La funcionalidad de búsqueda se implementa en WebIDX.JS que usa SQL.JS para proporcionar una interfaz al archivo SQLITE.
Puedes ver una demostración en vivo aquí.
$ /path/to/webidx.pl -x index.html -x archives.html --xP secret_files -o https://example.com -z . ./index.db
You can run webidx.pl --help to see all the available command-line options.
< script src =" https://cdnjs.cloudflare.com/ajax/libs/sql.js/1.10.1/sql-wasm.js " > </ script >
< script src =" https://cdnjs.cloudflare.com/ajax/libs/pako/2.1.0/pako.min.js " > </ script >
< script src =" /path/to/webidx.js " > </ script > < form onsubmit =" window.webidx.search({dbfile:'/webidx.db.gz',query:document.getElementById('q').value});return false; " >
< input id =" q " type =" search " >
</ form >Cuando el usuario llega a la tecla de retorno en el cuadro de búsqueda, ¡aparecerá un diálogo modal que contiene resultados de búsqueda!
The object that's passed to window.webidx.search() can have the following properties:
dbfile : URL of the SQLite database filequery : search queryresultCallback : a callback which is passed an array of search results. Each result is an object with the title and url properties. Si no se define, se mostrará un diálogo modal.errorCallback : a callback which is passed any error string as an argument.titleSuffix : a string to be removed from the end of page titles.titlePrefix : a string to be removed from the beginning of page titles.