MI
SOFTWARE

miniserve

miniserve 0.35.0 is a lightweight command-line HTTP server for temporarily sharing a file or directory, with authentication, TLS, uploads, QR codes, archives and range requests.

Version v0.35.0Windows x64MIT

What miniserve does

miniserve exposes a selected file or directory through a small HTTP service. It can add authentication, TLS, uploads, QR codes, archive downloads and range requests, but the command still places the chosen directory and network interface at the center of the security boundary.

Local-first exposure

The default test should bind to the loopback address and share a dedicated directory containing only disposable files. A page that opens in a browser does not mean the service is ready for a LAN or public network.

Authentication and transport

Plain HTTP exposes credentials and file contents. A password alone is not a public deployment plan; public or shared access needs TLS, strong authentication, a minimal directory, firewall rules, logs, storage limits and a clear shutdown process.

Upload and parent-directory boundaries

Uploads, directory creation and symbolic links change the risk profile. Start with read-only sharing, inspect hidden files and backups in the selected directory and verify that paths outside the intended root are not reachable.

Maintenance note

Review date: 2026-08-23. The page was checked against miniserve 0.35.0, Windows x64 packaging, loopback binding, authentication, TLS, upload scope and temporary-service shutdown.

SAVE TO CLOUD

Save to your cloud drive

Open the cloud drive to get the file directly, or save it for convenient access on another device.

Links checked 2026-08-06
Save first, access when you need itOn desktop, scan with the matching cloud-drive app. On mobile, tap the save button.
GUIDE

miniserve 0.35.0 Windows local and LAN sharing guide

Bind miniserve locally, share a minimal test directory, verify listing and download boundaries, then add carefully limited LAN protections only when a real use case requires them.

Before you start

  • Create a dedicated directory containing only public test files; do not share a home directory, desktop or project root.
  • Understand Windows firewall, bind address and LAN boundaries, and check that the router has no automatic port mapping.
  • If upload or wider access is needed, design authentication, TLS, capacity limits, logs, backup and a service shutdown procedure first.
01

Installation steps

  1. 01

    Place and verify the executable

    Put the single EXE in a fixed tools directory, check version, default port and bind parameters from help and scan it before the first run.

  2. 02

    Prepare a minimal directory

    Copy one non-sensitive sample file, inspect hidden files, symbolic links and inherited permissions and keep the source outside the service directory.

  3. 03

    Keep the firewall closed for the first test

    Do not create a public inbound rule for the first launch. Verify access locally, then add the smallest LAN rule only when the exact port and network are understood.

02

Quick start

  1. 01

    Start on loopback

    Specify the test directory and loopback bind address, choose a port and check the terminal output for the actual service path and address.

  2. 02

    Verify listing and download scope

    Test directory listing, a single download and a missing path, then confirm parent directories, hidden files and non-shared content remain inaccessible.

  3. 03

    Add protection deliberately

    For LAN use, add strong authentication and a limited interface. Test TLS or uploads in an isolated directory and review every related parameter before enabling write access.

Usage tips

  • A random route only reduces accidental discovery; it does not replace authentication, TLS or a firewall.
  • Uploads and directory creation can overwrite files, fill storage and introduce untrusted content. Leave them off when read-only sharing is enough.
  • Stop the process after sharing, remove temporary firewall rules and inspect the upload directory and access log.
Troubleshooting and uninstall

Why can the host open the page but another device cannot?

Check whether the service is bound only to loopback, the Windows network profile and the firewall port. Expand to a trusted LAN only after those boundaries are explicit.

Why does authentication or TLS fail in the browser?

Check username and password format, certificate and private-key matching and whether the hostname is covered by the certificate. Do not ignore warnings while sending sensitive files.

  1. Stop the service and remove temporary rulesTerminate all miniserve processes, delete dedicated firewall rules and temporary uploads, remove the tools directory from PATH and then delete the EXE.
FAQ

Frequently asked questions

What is miniserve's default port?

The default is commonly 8080. Test on loopback with a non-sensitive directory first and confirm the actual bind interface before considering LAN access.

Is a username and password enough for public access?

No. Plain HTTP can expose credentials and content, and weak passwords can be guessed. Wider access also needs TLS, strong authentication, firewall policy, a minimal directory and logs.

Can miniserve expose a parent directory?

The selected file or directory defines the starting scope, while uploads, directory creation, symbolic links and configuration can change the effective risk. Inspect the scope before starting.