diff --git a/gunicorn.conf.py b/gunicorn.conf.py
index 995b4fb9d..bcc12490e 100644
--- a/gunicorn.conf.py
+++ b/gunicorn.conf.py
@@ -2,7 +2,7 @@ import os
 
 bind = '0.0.0.0:8000'
 workers = int(os.getenv("PAPERLESS_WEBSERVER_WORKERS", 2))
-worker_class = 'uvicorn.workers.UvicornWorker'
+worker_class = 'paperless.workers.ConfigurableWorker'
 timeout = 120
 
 def pre_fork(server, worker):
diff --git a/src/paperless/workers.py b/src/paperless/workers.py
new file mode 100644
index 000000000..4f2f0802a
--- /dev/null
+++ b/src/paperless/workers.py
@@ -0,0 +1,11 @@
+import os
+from uvicorn.workers import UvicornWorker
+from django.conf import settings
+
+os.environ.setdefault("DJANGO_SETTINGS_MODULE", "paperless.settings")
+
+
+class ConfigurableWorker(UvicornWorker):
+    CONFIG_KWARGS = {
+        "root_path": settings.FORCE_SCRIPT_NAME or "",
+    }