From 04957c0f08a062a5cc5f3a09eded76d4fb1db3fd Mon Sep 17 00:00:00 2001 From: yhirose Date: Mon, 6 Jan 2020 17:13:31 -0500 Subject: [PATCH] Fix #315 --- README.md | 23 +++++++++++++---------- example/simplesvr.cc | 5 ++++- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 767e5ca..a8af941 100644 --- a/README.md +++ b/README.md @@ -50,23 +50,26 @@ svr.listen_after_bind(); ### Static File Server ```cpp -svr.set_base_dir("./www"); // This is same as `svr.set_base_dir("./www", "/")`; +auto ret = svr.set_base_dir("./www"); // This is same as `svr.set_base_dir("./www", "/")`; +if (!ret) { + // The specified base directory doesn't exist... +} +// Mount /public to ./www directory +ret = svr.set_base_dir("./www", "/public"); + +// Mount /public to ./www1 and ./www2 directories +ret = svr.set_base_dir("./www1", "/public"); // 1st order to search +ret = svr.set_base_dir("./www2", "/public"); // 2nd order to search +``` + +```cpp // User defined file extension and MIME type mappings svr.set_file_extension_and_mimetype_mapping("cc", "text/x-c"); svr.set_file_extension_and_mimetype_mapping("cpp", "text/x-c"); svr.set_file_extension_and_mimetype_mapping("hh", "text/x-h"); ``` -```cpp -svr.set_base_dir("./www", "/public"); -``` - -```cpp -svr.set_base_dir("./www1", "/public"); // 1st order -svr.set_base_dir("./www2", "/public"); // 2nd order -``` - The followings are built-in mappings: | Extension | MIME Type | diff --git a/example/simplesvr.cc b/example/simplesvr.cc index dcc97f6..c6f50bb 100644 --- a/example/simplesvr.cc +++ b/example/simplesvr.cc @@ -122,7 +122,10 @@ int main(int argc, const char **argv) { auto base_dir = "./"; if (argc > 2) { base_dir = argv[2]; } - svr.set_base_dir(base_dir); + if (!svr.set_base_dir(base_dir)) { + cout << "The specified base directory doesn't exist..."; + return 1; + } cout << "The server started at port " << port << "...";