diff --git a/core/core.services.yml b/core/core.services.yml
index 2b27f69..38e21df 100644
--- a/core/core.services.yml
+++ b/core/core.services.yml
@@ -1105,6 +1105,14 @@ services:
     arguments: ['@module_handler']
     tags:
       - { name: mime_type_guesser }
+  file.mime_type.guesser.fileinfo:
+    class: Symfony\Component\HttpFoundation\File\MimeType\FileinfoMimeTypeGuesser
+    tags:
+      - { name: mime_type_guesser, priority: 64 }
+  file.mime_type.guesser.filebinary:
+    class: Symfony\Component\HttpFoundation\File\MimeType\FileBinaryMimeTypeGuesser
+    tags:
+      - { name: mime_type_guesser, priority: 32 }
   renderer:
     class: Drupal\Core\Render\Renderer
     arguments: ['@controller_resolver', '@theme.manager', '@plugin.manager.element_info']
diff --git a/core/lib/Drupal/Core/File/MimeType/MimeTypeGuesser.php b/core/lib/Drupal/Core/File/MimeType/MimeTypeGuesser.php
index d7b2768..91100f7 100644
--- a/core/lib/Drupal/Core/File/MimeType/MimeTypeGuesser.php
+++ b/core/lib/Drupal/Core/File/MimeType/MimeTypeGuesser.php
@@ -66,9 +66,15 @@ public function guess($path) {
    * @return $this
    */
   public function addGuesser(MimeTypeGuesserInterface $guesser, $priority = 0) {
-    $this->guessers[$priority][] = $guesser;
-    // Mark sorted guessers for rebuild.
-    $this->sortedGuessers = NULL;
+    // Only add guessers which are supported.
+    // @see \Symfony\Component\HttpFoundation\File\MimeType\FileinfoMimeTypeGuesser
+    // @see \Symfony\Component\HttpFoundation\File\MimeType\FileBinaryMimeTypeGuesser
+    $supported = method_exists($guesser, 'isSupported') ? $guesser->isSupported() : TRUE;
+    if ($supported) {
+      $this->guessers[$priority][] = $guesser;
+      // Mark sorted guessers for rebuild.
+      $this->sortedGuessers = NULL;
+    }
     return $this;
   }
 
