lhttpzip
ZIP 内のファイルを、解凍することなく直接ブラウザで閲覧するためのローカル HTTP サーバです。
ZIP でまとめた HTML ファイルなどを閲覧したいけれど、解凍するのが面倒な時や、ちょっと内容を確認したい時などに。

ブラウザは任意のものを使ってください。
コンソールプログラムなので、端末上で実行して、ローカルサーバとして動作させます。

  • License : BSD-3
  • 動作環境 : Linux
概要
HTTP サーバとして起動したこのプログラムが、ブラウザとやりとりすることで、要求された ZIP 内のファイルを解凍しながら、表示させることができます。

サーバとして起動している間は、ブラウザで以下の URL を開くと、ZIP 内のファイルを表示できます。

http://localhost:<ポート番号>/<ファイルパス>
(ポート番号はデフォルトで 8080)

  • 一般的な ZIP ファイルのみ対応。
    (64bit ZIP や暗号化、無圧縮/Deflate 以外の圧縮方法などには対応していません)
  • 日本語ファイル名などを含む場合でも表示できます。
    (UTF-8 以外の場合、-c オプションで文字エンコードを指定しないと文字化けします)
  • URL でディレクトリを指定した場合、そのディレクトリ下に index.html または index.htm がない場合はファイルのリストを表示します。
    (-I コマンドで常にファイルリストを表示できます)
使い方
端末上で以下のコマンドを実行します。
閲覧したい ZIP ファイルのパスを引数として渡します。

$ lhttpzip <zip ファイル名>

正常にサーバとして起動したら、プログラムはそのまま実行され続けます。
その状態で、ブラウザで以下の URL を開きます。

http://localhost:8080/
または
http://127.0.0.1:8080/

ZIP のルートディレクトリに index.html または index.htm があれば、そのファイルが表示されます。
ない場合はファイルのリストが表示されます。

サーバとしてプログラムが実行している間のみ、ブラウザで ZIP 内のファイルを閲覧できます。

サーバを終了させるには、実行している端末上で Ctrl+C を押すか、kill コマンドでプロセスを終了させます。