diff --git a/app/Http/Controllers/ProxyController.php b/app/Http/Controllers/ProxyController.php
index 21d6b284cdae639a192bccd075b80d89882c78f7..17e626ad2018c30d9d94094e01beef15a1c1f94e 100644
--- a/app/Http/Controllers/ProxyController.php
+++ b/app/Http/Controllers/ProxyController.php
@@ -166,6 +166,15 @@ class ProxyController extends Controller
                         $htmlDocument->proxifyContent();
                         $result["data"] = $htmlDocument->getResult();
                         break;
+                    case 'application/pdf':
+                        if (!isset($result["header"]["content-disposition"])) {
+                            $name     = "document.pdf";
+                            $basename = basename($targetUrl);
+                            if (stripos($basename, ".pdf") !== false) {
+                                $name = $basename;
+                            }
+                            $result["header"]["content-disposition"] = "attachment; filename=$name";
+                        }
                     case 'image/png':
                     case 'image/jpeg':
                     case 'image/gif':
@@ -308,6 +317,8 @@ class ProxyController extends Controller
                             $headerArray[strtolower(trim($ar[0]))] = strtolower(trim($ar[1]));
                         } elseif (strtolower($ar[0]) === "location") {
                             $headerArray[trim($ar[0])] = $this->proxifyUrl(trim($ar[1]), null, false);
+                        } elseif (strtolower($ar[0]) === "content-disposition") {
+                            $headerArray[strtolower(trim($ar[0]))] = strtolower(trim($ar[1]));
                         } else {
                             #$headerArray[trim($ar[0])] = trim($ar[1]);
                         }