Repolode
TheWaWaR

TheWaWaR/simple-http-server

ディレクトリ一覧表示、アップロード、Basic Auth、オプションのHTTPSに対応した、Rust製のシンプルな静的ファイルサーバーです。

スター
3,461
フォーク
218
未解決の Issue
45
最終コミット
2 か月前

これは何?

Simple HTTP Serverは、ローカルフォルダをHTTPで公開するためのコマンドラインツールです。1つのコマンドで起動でき、パンくずリスト付きのディレクトリ一覧を表示します。index.htmlを自動で配信できるほか、部分ダウンロード用のRangeリクエストにも対応しています。gzipやdeflateによる圧縮は、対象のファイル拡張子を指定して有効にできます。

開発用途や小規模なデプロイ向けに、CSRFトークンで保護されたファイルアップロード、HTTP Basic Auth、CORS、COOP/COEPヘッダーなどのオプションを備えています。--try-fileオプションを使うと、存在しないパスへのリクエストに対してフォールバックファイルを配信できるため、シングルページアプリケーションに適しています。--base-urlオプションを指定すれば、パスのプレフィックスを取り除くリバースプロキシの背後でも実行できます。

サーバーはaxumとtokioを基盤にしています。PKCS#12証明書(.p12または.pfx)を使ったHTTPSはtls featureで利用できますが、バイナリサイズを抑えるためデフォルトでは無効です。Windows、macOS、Linuxで動作し、cargo installでインストールできます。

主な機能

  • 01パンくずリスト付きのディレクトリ一覧表示と、名前・更新日時・サイズによる並べ替え
  • 02index.htmlの任意表示と、--try-fileによるSPA向けフォールバック
  • 03CSRF保護と設定可能なサイズ上限を備えたファイルアップロード
  • 04HTTP Basic Auth、CORS、COOP/COEPヘッダー
  • 05Rangeリクエスト、ETag/Last-Modifiedによるキャッシュ、gzip/deflate圧縮
  • 06tls featureによるPKCS#12 HTTPS(任意)

ユースケース

  • LAN上やチームメンバーとの間で、ローカルフォルダをすばやく共有する
  • index.htmlへのフォールバック付きで、シングルページアプリケーションのビルド成果物を配信する
  • ローカルのPKCS#12証明書を使ったHTTPSが必要なフロントエンドコードをテストする
  • パスプレフィックス付きのリバースプロキシの背後で、小規模なアップロード用エンドポイントを動かす

トピック

よくある質問

simple-http-server とは?
ディレクトリ一覧表示、アップロード、Basic Auth、オプションのHTTPSに対応した、Rust製のシンプルな静的ファイルサーバーです。 Simple HTTP Serverは、ローカルフォルダをHTTPで公開するためのコマンドラインツールです。1つのコマンドで起動でき、パンくずリスト付きのディレクトリ一覧を表示します。index.htmlを自動で配信できるほか、部分ダウンロード用のRangeリクエストにも対応しています。gzipやdeflateによる圧縮は、対象のファイル拡張子を指定して有効にできます。
simple-http-server は無料で使えますか?ライセンスは?
simple-http-server は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
simple-http-server は今もメンテナンスされていますか?
半年以内に更新あり。simple-http-server の最終コミットは 2026年8月27日 です。
simple-http-server は何に使えますか?
LAN上やチームメンバーとの間で、ローカルフォルダをすばやく共有する index.htmlへのフォールバック付きで、シングルページアプリケーションのビルド成果物を配信する ローカルのPKCS#12証明書を使ったHTTPSが必要なフロントエンドコードをテストする パスプレフィックス付きのリバースプロキシの背後で、小規模なアップロード用エンドポイントを動かす
simple-http-server はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/TheWaWaR/simple-http-server

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト