diff --git a/apps/rss_feeds/models.py b/apps/rss_feeds/models.py index 8e9588d53..f63dbf167 100644 --- a/apps/rss_feeds/models.py +++ b/apps/rss_feeds/models.py @@ -46,6 +46,7 @@ from utils.feed_functions import relative_timesince from utils.feed_functions import seconds_timesince from utils.story_functions import strip_tags, htmldiff, strip_comments, strip_comments__lxml from utils.story_functions import prep_for_search +from utils.story_functions import create_signed_url ENTRY_NEW, ENTRY_UPDATED, ENTRY_SAME, ENTRY_ERR = range(4) @@ -1869,6 +1870,7 @@ class Feed(models.Model): story['story_content'] = story_content story['story_permalink'] = story_db.story_permalink story['image_urls'] = story_db.image_urls + story['secure_image_urls']= cls.secure_image_urls(story_db.image_urls) story['story_feed_id'] = feed_id or story_db.story_feed_id story['has_modifications']= has_changes story['comment_count'] = story_db.comment_count if hasattr(story_db, 'comment_count') else 0 @@ -1900,6 +1902,13 @@ class Feed(models.Model): return story + @classmethod + def secure_image_urls(cls, urls): + signed_urls = [create_signed_url(settings.IMAGES_URL, + settings.IMAGES_SECRET_KEY, + url) for url in urls] + return dict(zip(urls, signed_urls)) + def get_tags(self, entry): fcat = [] if entry.has_key('tags'): diff --git a/fabfile.py b/fabfile.py index 0e554bdf1..956c6d08c 100644 --- a/fabfile.py +++ b/fabfile.py @@ -715,7 +715,7 @@ def setup_sudoers(user=None): sudo('chmod 0440 /etc/sudoers.d/sclay') def setup_nginx(): - NGINX_VERSION = '1.11.8' + NGINX_VERSION = '1.15.8' with cd(env.VENDOR_PATH), settings(warn_only=True): sudo("groupadd nginx") sudo("useradd -g nginx -d /var/www/htdocs -s /bin/false nginx") diff --git a/settings.py b/settings.py index 52be44851..bf5f799f8 100644 --- a/settings.py +++ b/settings.py @@ -48,7 +48,9 @@ SERVER_NAME = 'newsblur' SERVER_EMAIL = 'server@newsblur.com' HELLO_EMAIL = 'hello@newsblur.com' NEWSBLUR_URL = 'http://www.newsblur.com' +IMAGES_URL = 'https://images.newsblur.com' SECRET_KEY = 'YOUR_SECRET_KEY' +IMAGES_SECRET_KEY = "YOUR_SECRET_IMAGE_KEY" # =================== # = Global Settings =