voidtools

HTTP Server

The Everything HTTP server allows you to search and access your files from a web browser on another computer, phone, or tablet on your local network.

Download
Start the HTTP server
Access the HTTP server
Change username and password
Different indexes
Options
Disable file downloading
Security
URL query string
Customize the HTTP server
Run the HTTP server as a service
Troubleshooting
See also



Download


The HTTP server is available as a separate plugin for Everything.

HTTP Server Plugin

Everything 1.4 includes the HTTP server by default.



Start the HTTP server


The HTTP server is disabled by default.

To start the HTTP server:
  • In Everything, from the Tools menu, click Options.
  • Click the HTTP Server tab on the left.
  • Check Enable HTTP server.
  • Optionally, set a username and password.
  • Click OK.
  • When prompted, allow Everything through the Windows Firewall.


Access the HTTP server


To access the HTTP server from a device on the same network:
  • In your web browser address bar, enter http://host or http://ip-address.
  • Replace host with the computer name running Everything (for example: http://DESKTOP-XXXXXX), or ip-address with its local IP address (for example: http://192.168.1.100).
If a custom HTTP server port is configured, append :port to the URL (for example: http://DESKTOP-XXXXXX:8080).



Change username and password


To change the HTTP server username and password:
  • In Everything, from the Tools menu, click Options.
  • Click the HTTP Server tab on the left.
  • Set the Username.
  • Set the Password.
  • Click OK.
If both the username and password fields are empty, no authentication is required to access the HTTP server.

For more information, see Security.



Different indexes


The HTTP server can run in a separate Everything instance with its own custom index.

For example, you can run your main Everything instance with full access to all indexed volumes, while running a separate HTTP server instance configured to share only selected folders or NTFS volumes over the network.

For more information, see Multiple Instances.



Options


Configure settings for the HTTP server.

Everything Options HTTP Server

To change the HTTP server settings:
  • In Everything, from the Tools menu, click Options.
  • Click the HTTP Server tab on the left.
Enable HTTP server
Enables or disables the HTTP server.

Bind to interfaces
Bind the listening socket to the specified interfaces.
Leave empty to bind to all available network interfaces.
Use 127.0.0.1 to restrict access strictly to the local machine.

Listen on port
Sets the port number for incoming connections.
To connect from a web browser when using a non-default port (other than 80), append :port to the address (for example: http://DESKTOP-XXXXXX:8080).

Username
The username required for HTTP Basic authentication.
Leave both username and password empty to disable authentication.

Password
The password required for HTTP Basic authentication.
Leave both username and password empty to disable authentication.

Enable logging
Enables logging of HTTP requests and server events.

Log file
The path and file name of the log file.
Click Select to choose the log file.

Maximum size
The maximum size of the log file in KB.
When the log exceeds this limit, older entries are automatically trimmed from the beginning of the file.

Serve pages from
The folder containing custom web files to serve.
Leave empty to load files from %APPDATA%\Everything\HTTP Server (or the HTTP Server folder in the same location as Everything.exe if Store settings and data in %APPDATA%\Everything is disabled).

Default page
The default page displayed when opening the root URL.
Leave empty to display the default search interface and drive list.

Allow file download
Allows users to download files from search results.
When disabled, users can browse and search file listings, but cannot download files.



Disable file downloading


To prevent files from being downloaded from the HTTP server:
  • In Everything, from the Tools menu, click Options.
  • Click the HTTP Server tab on the left.
  • Uncheck Allow file download.
  • Click OK.
Web browsers can still search and browse the Everything index.
File names, paths, sizes, and dates remain visible.



Security


Consider the following before making the HTTP server reachable from an untrusted network.

Any web browser that can authenticate can search every file and folder in your Everything index.

Files can also be downloaded unless file downloading is disabled.
To disable file downloading, see Disable file downloading.



The HTTP server uses HTTP Basic authentication.
The username and password are sent using Base64 encoding.
Anyone able to observe an unencrypted connection can recover them.
The HTTP server does not support TLS.

Leaving both the username and password empty disables authentication.

To reduce exposure:
  • Use Bind to interfaces to limit the server to a specific interface, or to 127.0.0.1 for local connections only.
  • Restrict access to the listening port with the Windows Firewall.
  • Limit the index to only the files and folders you intend to share. See Different indexes.
  • Uncheck Allow file download if clients only need to search and browse.
  • Do not expose an HTTP server directly to the internet. Use a VPN or an SSH tunnel instead.


URL query string


The HTTP server accepts search options and result settings as URL query string parameters.

Each parameter uses the key=value format.
Parameters can be combined and omitted when not required.

For example, to search for ABC and 123, return the first 100 results, and sort the results by size in descending order:
http://localhost/?search=ABC+123&offset=0&count=100&sort=size&ascending=0

Keys:
s
q
The search text.

offset
o
Start displaying results at the specified offset.

count
c
Return no more than the specified number of results.

json
j
Return results as a JSON object if the value is nonzero.

case
i
Match case if the value is nonzero.

diacritics
m
Match diacritics if the value is nonzero.

wholeword
w
Match whole words if the value is nonzero.

path
p
Search full paths if the value is nonzero.

prefix
Match prefix if the value is nonzero.

suffix
Match suffix if the value is nonzero.

ignore_punctuation
Ignore punctuation if the value is nonzero.

ignore_whitespace
Ignore whitespace if the value is nonzero.

regex
r
Perform a regular expression search if the value is nonzero.

path_column
Include the result path in the JSON object if the value is nonzero.

size_column
Include the result size in the JSON object if the value is nonzero.

date_modified_column
Include the result modified date in the JSON object if the value is nonzero.

sort
Sort results by one of the following:
Sort nameDescription
nameSort by name.
pathSort by path.
date_modified Sort by date modified.
sizeSort by size.

ascending
Sort in ascending order if the value is nonzero.

Default query string values:
KeyValue
search
offset0
count32
json0
case0
diacritics0
wholeword0
path0
prefix0
suffix0
ignore_punctuation0
ignore_whitespace0
regex0
sortname
ascending1

Default JSON query string values:
KeyValue
search
offset0
count4294967295
json1
case0
diacritics0
wholeword0
path0
prefix0
suffix0
ignore_punctuation0
ignore_whitespace0
regex0
path_column0
size_column0
date_modified_column0
sortname
ascending1



Customize the HTTP server


Customize the HTML, CSS, and image files used by the Everything HTTP server.

To customize the CSS and image files:
Everything will serve these files instead of the built-in default files.

To view your changes in a browser, hold Shift and click the browser reload button to bypass cached files.



Change the default HTTP server page


To change the default HTTP server page:
  • In Everything, from the Tools menu, click Options.
  • Click the HTTP Server tab on the left.
  • Set the Default page to your custom HTML page.
  • Click OK.



Customize the HTTP server HTML


To customize the HTTP server HTML:
  • In Everything, from the File menu, click Exit.
  • Download the HTTP server strings template.
  • Create a folder named C:\EverythingHTTPServer.
  • Extract http_server_strings.ini to the C:\EverythingHTTPServer folder.
  • Edit C:\EverythingHTTPServer\http_server_strings.ini to customize the HTTP server HTML.
  • Open your Plugins.ini file.
  • Under the HTTP server plugin section ([http_server32.dll], [http_server64.dll], [http_serverARM.dll], or [http_serverARM64.dll]), set strings_filename to: C:\EverythingHTTPServer\http_server_strings.ini
  • Save and close Plugins.ini.
  • Restart Everything.



Run the HTTP server as a service


Use the Everything client service to run the HTTP server without having a user logged in.

To run the HTTP server as an Everything client service:
  • On the server, copy Everything.exe to C:\EverythingHTTPServer.
  • Install/copy the HTTP Server plugin to C:\EverythingHTTPServer\plugins.
  • Run C:\EverythingHTTPServer\Everything.exe as administrator.
  • In Everything, from the Tools menu, click Options.
  • Click the General tab on the left.
  • Uncheck Store settings and data in %APPDATA%\Everything.
  • Uncheck Everything Service.
  • The Everything service is not required when running Everything as a client service.
  • Click OK.
  • Set up the desired indexes.
  • Set up the HTTP Server settings.
  • In Everything, from the File menu, click Exit.
  • From a command prompt, run:
  • C:\EverythingHTTPServer\Everything.exe -install-client-service
    Everything will automatically relaunch as administrator if required.
    The Everything client service starts automatically after installation.


To make changes to the HTTP server:
  • From a command prompt, run:
  • C:\EverythingHTTPServer\Everything.exe -stop-client-service
    Everything will automatically relaunch as administrator if required.
  • Run C:\EverythingHTTPServer\Everything.exe as administrator.
  • Make the required changes to the HTTP server configuration.
  • In Everything, from the File menu, click Exit.
  • From a command prompt, run:
  • C:\EverythingHTTPServer\Everything.exe -start-client-service
    Everything will automatically relaunch as administrator if required.


To uninstall the Everything client service:
  • From a command prompt, run:
  • C:\EverythingHTTPServer\Everything.exe -uninstall-client-service
    Everything will automatically relaunch as administrator if required.


Troubleshooting


Unable to start HTTP server: bind failed 10048
The HTTP server port is already in use.
Make sure no other web server or application is using the same port, or change the HTTP server port.

To change the HTTP server port:
  • In Everything, from the Tools menu, click Options.
  • Click the HTTP Server tab on the left.
  • Change the Listen on port to: 8080
  • Click OK.
Use the same port when accessing the HTTP server.

The web browser cannot connect to the server
Check that the HTTP server is enabled on the server.
Check that the address bar includes the correct port if it is different from port 80.
Check Bind to interfaces is empty, or set to an interface the web browser can reach.
Check that the Windows Firewall allows Everything to accept connections on the listening port.

No results are returned
Check that the files and folders you expect are included in the index on the server.
If the HTTP server runs as a client service, check that the service is using the expected settings and index.



See also



About voidtools
© 2026 voidtools - Privacy