summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Heiser <markus.heiser@darmarit.de>2022-03-20 16:28:14 +0100
committerMarkus Heiser <markus.heiser@darmarit.de>2022-03-20 16:28:14 +0100
commitfd5fcdedcea6be100044b55e96186f5386d4b8bd (patch)
tree9c4597627c5a97668400f670e9396cd5dfdab023
parentb25f118d646630816273735aa3485659c184ed82 (diff)
downloadsearxng-fd5fcdedcea6be100044b55e96186f5386d4b8bd.tar.gz
searxng-fd5fcdedcea6be100044b55e96186f5386d4b8bd.zip
[interim fix] static files can't be delivered by HTTP.
Since PR 932 [1][2] static files can't be delivered by HTTP server any longer. This patch makes the hash paramter in the URL of static files: /static/themes/simple/css/searxng.min.css?5fde34a74bc438c7b56ec8c6501e131cc9914bd8 optional. By default the hash parameter is disabled. HINT: Instances that do not deliver static files by their HTTP server and have a long expire time [3] should enable this option. ---- This is only a interim solution, on the long run: make static.build.commit creates files including the file name: css/searxng-5fde34a74bc438c7b56ec8c6501e131cc9914bd8.min.css and a mapping.json with this content[4] [1] https://github.com/searxng/searxng/issues/964 [2] https://github.com/searxng/searxng/pull/932#issuecomment-1067039518 [3] https://github.com/searxng/searxng/pull/932/commits/55833364401ed72c30b3e85c16824a75de6b547a [4] https://github.com/searxng/searxng/pull/932#issuecomment-1067216426 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
-rw-r--r--searx/settings.yml1
-rw-r--r--searx/settings_defaults.py1
-rwxr-xr-xsearx/webapp.py9
3 files changed, 7 insertions, 4 deletions
diff --git a/searx/settings.yml b/searx/settings.yml
index dc81f4a82..e76d6d327 100644
--- a/searx/settings.yml
+++ b/searx/settings.yml
@@ -70,6 +70,7 @@ redis:
ui:
# Custom static path - leave it blank if you didn't change
static_path: ""
+ static_use_hash: false
# Custom templates path - leave it blank if you didn't change
templates_path: ""
# query_in_title: When true, the result page's titles contains the query
diff --git a/searx/settings_defaults.py b/searx/settings_defaults.py
index bb0f2eb29..e3efb8544 100644
--- a/searx/settings_defaults.py
+++ b/searx/settings_defaults.py
@@ -176,6 +176,7 @@ SCHEMA = {
},
'ui': {
'static_path': SettingsDirectoryValue(str, os.path.join(searx_dir, 'static')),
+ 'static_use_hash': SettingsValue(bool, False),
'templates_path': SettingsDirectoryValue(str, os.path.join(searx_dir, 'templates')),
'default_theme': SettingsValue(str, 'simple'),
'default_locale': SettingsValue(str, ''),
diff --git a/searx/webapp.py b/searx/webapp.py
index 5aa0a382c..2f27d0f64 100755
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -350,10 +350,11 @@ def custom_url_for(endpoint: str, override_theme: Optional[str] = None, **values
if endpoint == 'static' and values.get('filename'):
theme_name = get_current_theme_name(override=override_theme)
filename_with_theme = "themes/{}/{}".format(theme_name, values['filename'])
- file_hash = static_files.get(filename_with_theme)
- if file_hash:
- values['filename'] = filename_with_theme
- suffix = "?" + file_hash
+ values['filename'] = filename_with_theme
+ if get_setting('ui.static_use_hash', False):
+ file_hash = static_files.get(filename_with_theme)
+ if file_hash:
+ suffix = "?" + file_hash
if endpoint == 'info' and 'locale' not in values:
locale = request.preferences.get_value('locale')
if _INFO_PAGES.get_page(values['pagename'], locale) is None: