Function serveStaticFiles
Returns a request handler that serves files from the specified directory.
@safe void delegate(scope HTTPServerRequest, HTTPServerResponse) serveStaticFiles
(
GenericPath!(vibe.core.path.PosixPathFormat) local_path,
HTTPFileServerSettings settings = null
) @safe;
@safe void delegate(scope HTTPServerRequest, HTTPServerResponse) serveStaticFiles
(
string local_path,
HTTPFileServerSettings settings = null
) @safe;
See sendFile
for more information.
Parameters
Name | Description |
---|---|
local_path | Path to the folder to serve files from. |
settings | Optional settings object enabling customization of how the files get served. |
Returns
A request delegate is returned, which is suitable for registering in
a URLRouter
or for passing to listenHTTP
.
See Also
Example
import vibe .http .fileserver;
import vibe .http .router;
import vibe .http .server;
void setupServer()
{
auto router = new URLRouter;
// add other routes here
router .get("*", serveStaticFiles("public/"));
auto settings = new HTTPServerSettings;
listenHTTP(settings, router);
}
Example
This example serves all files in the "public" sub directory with an added prefix "static/" so that they don't interfere with other registered routes.
import vibe .http .fileserver;
import vibe .http .router;
import vibe .http .server;
void setupRoutes()
{
auto router = new URLRouter;
// add other routes here
auto fsettings = new HTTPFileServerSettings;
fsettings .serverPathPrefix = "/static";
router .get("/static/*", serveStaticFiles("public/", fsettings));
auto settings = new HTTPServerSettings;
listenHTTP(settings, router);
}