diff --git a/Cargo.toml b/Cargo.toml index 9fcabdd..3227e62 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "rts" -version = "15.1.0" +version = "16.0.0" authors = ["Bohdan Tsap "] repository = "https://github.com/bohdaq/rust-web-server" description = "rust-tls-server is a web server capable of serving static content over https." @@ -11,6 +11,6 @@ license = "MIT OR Apache-2.0 OR ISC OR LGPL-3.0-or-later OR CC-BY-4.0" [dependencies] openssl = { version="0.10.42", features = ["vendored"] } -rust-web-server = "15.1.0" +rust-web-server = "16.0.0" file-ext = "12.0.0" rcgen = "0.10.0" \ No newline at end of file diff --git a/INSTALL.md b/INSTALL.md index be9ecd2..d87cfca 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -14,9 +14,9 @@ There is a mirror for downloads on [Google Drive](https://drive.google.com/drive ## x86 64-bit ### Apple macOS -> sudo cp rts /usr/bin +> sudo cp rts /usr/local/bin -> sudo chmod ug+rwx,o+r /usr/bin/rts +> sudo chmod 777 /usr/local/bin/rts #### Homebrew macOS @@ -26,7 +26,7 @@ Open **[Rust TLS Server Homebrew formula](https://github.com/bohdaq/homebrew-rus ### Linux > sudo cp rts /usr/bin -> sudo chmod ug+rwx,o+r /usr/bin/rts +> sudo chmod 777 /usr/bin/rts #### Debian @@ -53,7 +53,7 @@ Copy executable to _C:\WINDOWS\system32_ folder. ### Linux > sudo cp rts /usr/bin -> sudo chmod ug+rwx,o+r /usr/bin/rts +> sudo chmod 777 /usr/bin/rts #### Debian diff --git a/README.md b/README.md index de72125..ea3e067 100644 --- a/README.md +++ b/README.md @@ -10,14 +10,16 @@ 1. [Content Security Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) is set to serve assets only from https sources. Inline javascript is forbidden 1. [Referer Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) is set -to not send any referer information -1. [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) -1. [HTTP Range Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests) -1. [HTTP Client Hints](https://developer.mozilla.org/en-US/docs/Web/HTTP/Client_hints) -1. [X-Content-Type-Options](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) -1. [X-Frame-Options](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) -1. Incoming request and outgoing response logging -1. [Symlinks](https://en.wikipedia.org/wiki/Symbolic_link) +1. [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS). Allowing resources to be used on other domains can be crucial for providing APIs and services. Knowing how cumberstone and difficult is the process to setup the CORS, server ships with CORS enabled to all requests by default. +1. [HTTP Range Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests). Server supports requests for the part of the file, or several different parts of the file. +1. [HTTP Client Hints](https://developer.mozilla.org/en-US/docs/Web/HTTP/Client_hints). Proactively asking client browser for suitable additional information about the system. +1. [X-Content-Type-Options](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) set to nosniff, prevents from MIME type sniffing attacks. +1. [X-Frame-Options](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options). Site is not allowed to be embedded into iframe on other domains. +1. [Symlinks](https://en.wikipedia.org/wiki/Symbolic_link). You can have symlinks in your folder and they will be resolved correctly. +1. [Caching](https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching#dealing_with_outdated_implementations) done right. It means no caching and therefore no outdated uncontrollable resources. +1. Resolving .html files without .html in path. It means if you try to open /some-html-file it will open file some-html-file.html and won't show 404 not found error. Same applies for folders. If you try to open /folder it will open file folder/index.html +1. Extensive logging. It means server prints the request-response pairs as they are so you can see all the details like request method, path, version and headers. +1. No third party dependencies. ## Download Download binary from [Google Drive](https://drive.google.com/drive/folders/1m0GyfvSaKROutjWeVLg23VBCbqZn7OkW?usp=sharing).