diff --git a/src/config.rs b/src/config.rs
index f11d2711a72d32c7f60252b5ebed5dc1877521a3..8cd1edecb82d330b214f843c3cbf5e31967b787d 100644
--- a/src/config.rs
+++ b/src/config.rs
@@ -251,14 +251,8 @@ pub enum IndexStrategyConfig {
 pub enum CompressionConfig {
   /// Automatically select encoding based on encoding negotiation.
   Auto,
-  /// Use the Brotli algorithm.
-  Brotli,
-  /// Use a Zlib structure with the deflate algorithm.
-  Deflate,
   /// Don't use any compression.
   Disabled,
-  /// Use the Gzip algorithm.
-  Gzip,
 }
 
 impl From<IndexStrategyConfig> for IndexStrategy {
diff --git a/src/server.rs b/src/server.rs
index 98996b49116331f105af813b2e8c0a3f10fb8a31..00e9e9f28867f3e47a44ffe9d5ea67dafafddfdc 100644
--- a/src/server.rs
+++ b/src/server.rs
@@ -1,5 +1,5 @@
 use crate::{
-  config::ServerConfig,
+  config::{CompressionConfig, ServerConfig},
   files::{path_context::PathContext, Files},
   thread,
   thread::ThreadHandle,
@@ -8,7 +8,7 @@ use actix_http::http::uri::InvalidUri;
 use actix_rt::Runtime;
 use actix_web::{
   dev::ServerHandle,
-  middleware::{self, Logger},
+  middleware::{self, Condition, Logger},
   App, HttpServer,
 };
 use snafu::{ResultExt, Snafu};
@@ -67,7 +67,12 @@ impl Server {
     let server_address = self.config.address;
     let serve_dir = Arc::clone(&self.serve_dir);
     let redirect_to_slash = self.config.redirect_to_slash;
-    let compression = self.config.compression.clone();
+
+    let enable_auto_compression = match self.config.compression {
+      Some(CompressionConfig::Auto) => true,
+      None => true,
+      _ => false,
+    };
 
     let root_path_context =
       Arc::new(PathContext::try_from(&self.config).context(CreatePathContext)?);
@@ -98,7 +103,10 @@ impl Server {
 
         App::new()
           .wrap(Logger::default())
-          .wrap(middleware::Compress::default())
+          .wrap(Condition::new(
+            enable_auto_compression,
+            middleware::Compress::default(),
+          ))
           .default_service(files_service)
       })
       .bind(server_address)