You can view .chm file using gnochm or kchmviewer under Linux. However sometime you cannot install these programs. There is a third alternative - arCHMage.
From the man page:
arCHMage is an extensible reader and decompiler for files in the CHM format. This is the format used by Microsoft HTML Help, and is also known as Compiled HTML. arCHMage is based on python-chm binding to chmlib from GnoCHM project.
It allows you extract .chm to directory.
Step # 1: Use apt-get command
If you are using Debian / Ubuntu, type the command:
# apt-get install archmage
Step # 2: Extract .chm to directory (directory will be created):
Type the command:
$ archmage file.chm output
Open your browser and type url file:///home/you/output or file:///home/you/output/index.html
You can view chm file using inbuilt http-server.
View chm file using Webserver
You can run archmage as http-server, which will publish chm file contents on specified port:
# archmage -p 8888 /path/to/file.chm &
Open a browser and type ulr http://localhost:8888/ or http://server-ip:8888/
Force apache to publish chm files
You can force Apache to publish chm file contents if there is trailing slash in request to that file. First make sure you have working mod_python. Now open httpd.conf /apache2.conf file:
# vi httpd.conf
Add following lines to your httpd.conf:
AddHandler python-program .chm
Save and close the file. Restart apache.
# /etc/init.d/httpd restart
Now upload file.chm to document root of your Apache webserver. Now view file by typing URL: http://you.com/file.chm/
Note: trailing slash at the end of URL.
=> Download arCHMage