Kiwix-serve is a ZIM compatible Web server. With its help you can deliver ZIM file content over your network.
Based on the well known HTTP protocol, kiwix-serve allows you to share the ZIM files available on your computer easily with others connected to your network. You simply need to start kiwix-serve and your content will be available for anybody through their own Web browser.
Kiwix-serve is a good solution if you have a LAN network and don't want to install Kiwix on all computers. It's a good alternative if you don't have a shared network disk from which everybody can start Kiwix.
Kiwix-serve has not so many features like Kiwix, but provides the most important ones:
- Full text search engine
- Search suggestions
- Really small and efficient
- Compatible with almost all browsers
- Available on all platforms
- Available as command line executable
- Embedded in Kiwix UI
- Able to deal with one ZIM file or XML library files
On Microsoft Windows, Apple Mac OSX and GNU/Linux, kiwix-serve is packaged and distributed with Kiwix. You simply need to download the Kiwix installer corresponding to your Operating System.
We also provide pre-compiled binaries for ARM GNU/Linux.
For other systems, you will have to download and compile kiwix-serve source code on your own.
Kiwix-serve is directly available in the Kiwix menu "Tools > server", but for people wanting to use it from the command line, here is how it works.
- kiwix-serve binary, available in the Kiwix application directory
- A ZIM file or a library file (you can use the library.xml file available in your Kiwix user profile).
Unix command line (just use kiwix-serve.exe on Microsoft Windows) example to start kiwix-serve with a XML library file:
kiwix-serve --library ~/.www.kiwix.org/kiwix/efrnsupg.default/library.xml
Unix command line example to start kiwix-serve with a ZIM file:
kiwix-serve --port=8080 wikipedia.zim
Once kiwix-serve is started, anyone with access to this computer over the network, will be able to connect to it. You need to retrieve the IP (xxx.xxx.xxx.xxx) of your computer and remember the port (per default 80) you have used and then people will only have to type in their browser address bar:
Kiwix-serve provides a few options:
- --port=PORT to specify the port you want to open for listening (per default 80)
- --index=foobar.idx to specify a fulltext index directory
- --daemon to execute the software in background
- --attachToProcess=PID to attach kiwix-serve process to other process
- --verbose to get a few logs
You can also run kiwix-serve without index, but in this case you won't have access to the fulltext search engine.