FIX: Resolve pull hotlinked image and broken link issues for secure media URLs (#8777)

When pull_hotlinked_images tried to run on posts with secure media (which had already been downloaded from external sources) we were getting a 404 when trying to download the image because the secure endpoint doesn't allow anon downloads.

Also, we were getting into an infinite loop of pull_hotlinked_images because the job didn't consider the secure media URLs as "downloaded" already so it kept trying to download them over and over.

In this PR I have also refactored secure-media-upload URL checks and mutations into single source of truth in Upload, adding a SECURE_MEDIA_ROUTE constant to check URLs against too.
This commit is contained in:
Martin Brennan
2020-01-24 11:59:30 +10:00
committed by GitHub
parent e4b8121650
commit 45b37a8bd1
9 changed files with 69 additions and 16 deletions
+1 -2
View File
@@ -57,8 +57,7 @@ class UrlHelper
end
def self.secure_proxy_without_cdn(url)
url = url.sub(SiteSetting.Upload.absolute_base_url, "/secure-media-uploads")
self.absolute(url, nil)
self.absolute(Upload.secure_media_url_from_upload_url(url), nil)
end
# Prevents double URL encode