diff --git a/identify/extensions.py b/identify/extensions.py
index 71bd65f..6d8a490 100644
--- a/identify/extensions.py
+++ b/identify/extensions.py
@@ -326,6 +326,7 @@ NAMES = {
     'BUILD.bazel': EXTENSIONS['bzl'],
     'CMakeLists.txt': EXTENSIONS['cmake'],
     'CHANGELOG': EXTENSIONS['txt'],
+    'config.ru': EXTENSIONS['rb'],
     'CONTRIBUTING': EXTENSIONS['txt'],
     'COPYING': EXTENSIONS['txt'],
     'Dockerfile': {'text', 'dockerfile'},
diff --git a/setup.cfg b/setup.cfg
index 63c810c..34fee6f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,6 @@
 [metadata]
 name = identify
-version = 2.5.21
+version = 2.5.22
 description = File identification library for Python
 long_description = file: README.md
 long_description_content_type = text/markdown
diff --git a/tests/identify_test.py b/tests/identify_test.py
index 16b4f37..2026afe 100644
--- a/tests/identify_test.py
+++ b/tests/identify_test.py
@@ -160,6 +160,7 @@ def test_tags_from_path_plist_text(tmpdir):
         ('Pipfile.lock', {'text', 'json'}),
         ('mod/test.py', {'text', 'python'}),
         ('mod/Dockerfile', {'text', 'dockerfile'}),
+        ('config.ru', {'text', 'ruby'}),
         ('Gemfile', {'text', 'ruby'}),
         ('Gemfile.lock', {'text'}),
         ('Jenkinsfile', {'text', 'groovy', 'jenkins'}),