[−][src]Struct actix_files::Files
Static files handling service.
Files
service must be registered with App::service()
method.
use actix_web::App; use actix_files::Files; let app = App::new() .service(Files::new("/static", "."));
Implementations
impl Files
[src]
pub fn new<T: Into<PathBuf>>(mount_path: &str, serve_from: T) -> Files
[src]
Create new Files
instance for a specified base directory.
Argument Order
The first argument (mount_path
) is the root URL at which the static files are served.
For example, /assets
will serve files at example.com/assets/...
.
The second argument (serve_from
) is the location on disk at which files are loaded.
This can be a relative path. For example, ./
would serve files from the current
working directory.
Implementation Notes
If the mount path is set as the root path /
, services registered after this one will
be inaccessible. Register more specific handlers and services first.
Files
uses a threadpool for blocking filesystem operations. By default, the pool uses a
number of threads equal to 5x the number of available logical CPUs. Pool size can be changed
by setting ACTIX_THREADPOOL environment variable.
pub fn show_files_listing(self) -> Self
[src]
Show files listing for directories.
By default show files listing is disabled.
pub fn redirect_to_slash_directory(self) -> Self
[src]
Redirects to a slash-ended path when browsing a directory.
By default never redirect.
pub fn files_listing_renderer<F>(self, f: F) -> Self where
F: Fn(&'r Directory, &'s HttpRequest) -> Result<ServiceResponse, Error> + 'static,
[src]
F: Fn(&'r Directory, &'s HttpRequest) -> Result<ServiceResponse, Error> + 'static,
Set custom directory renderer
pub fn mime_override<F>(self, f: F) -> Self where
F: Fn(&Name<'_>) -> DispositionType + 'static,
[src]
F: Fn(&Name<'_>) -> DispositionType + 'static,
Specifies mime override callback
pub fn index_file<T: Into<String>>(self, index: T) -> Self
[src]
Set index file
Shows specific index file for directory "/" instead of showing files listing.
pub fn use_etag(self, value: bool) -> Self
[src]
Specifies whether to use ETag or not.
Default is true.
pub fn use_last_modified(self, value: bool) -> Self
[src]
Specifies whether to use Last-Modified or not.
Default is true.
pub fn prefer_utf8(self, value: bool) -> Self
[src]
Specifies whether text responses should signal a UTF-8 encoding.
Default is false (but will default to true in a future version).
pub fn use_guards<G: Guard + 'static>(self, guards: G) -> Self
[src]
Specifies custom guards to use for directory listings and files.
Default behaviour allows GET and HEAD.
pub fn disable_content_disposition(self) -> Self
[src]
Disable Content-Disposition
header.
By default Content-Disposition` header is enabled.
pub fn default_handler<F, U>(self, f: F) -> Self where
F: IntoServiceFactory<U>,
U: ServiceFactory<Config = (), Request = ServiceRequest, Response = ServiceResponse, Error = Error> + 'static,
[src]
F: IntoServiceFactory<U>,
U: ServiceFactory<Config = (), Request = ServiceRequest, Response = ServiceResponse, Error = Error> + 'static,
Sets default handler which is used when no matched file could be found.
pub fn use_hidden_files(self) -> Self
[src]
Enables serving hidden files and directories, allowing a leading dots in url fragments.
Trait Implementations
impl Clone for Files
[src]
pub fn clone(&self) -> Self
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for Files
[src]
impl HttpServiceFactory for Files
[src]
pub fn register(self, config: &mut AppService)
[src]
impl ServiceFactory for Files
[src]
type Request = ServiceRequest
Requests handled by the created services.
type Response = ServiceResponse
Responses given by the created services.
type Error = Error
Errors produced by the created services.
type Config = ()
Service factory configuration.
type Service = FilesService
The kind of Service
created by this factory.
type InitError = ()
Errors potentially raised while building a service.
type Future = LocalBoxFuture<'static, Result<Self::Service, Self::InitError>>
The future of the Service
instance.
pub fn new_service(&self, _: ()) -> Self::Future
[src]
pub fn map<F, R>(self, f: F) -> MapServiceFactory<Self, F, R> where
F: FnMut(Self::Response) -> R + Clone,
[src]
F: FnMut(Self::Response) -> R + Clone,
pub fn map_err<F, E>(self, f: F) -> MapErrServiceFactory<Self, F, E> where
F: Fn(Self::Error) -> E + Clone,
[src]
F: Fn(Self::Error) -> E + Clone,
pub fn map_init_err<F, E>(self, f: F) -> MapInitErr<Self, F, E> where
F: Fn(Self::InitError) -> E + Clone,
[src]
F: Fn(Self::InitError) -> E + Clone,
Auto Trait Implementations
impl !RefUnwindSafe for Files
[src]
impl !Send for Files
[src]
impl !Sync for Files
[src]
impl Unpin for Files
[src]
impl !UnwindSafe for Files
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> IntoServiceFactory<T> for T where
T: ServiceFactory,
[src]
T: ServiceFactory,
pub fn into_factory(self) -> T
[src]
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,