diff --git a/searx/webapp.py b/searx/webapp.py index a5770271..2bbaf8f8 100644 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -115,10 +115,13 @@ def stats(): def opensearch(): global opensearch_xml method = 'post' + scheme = 'http' # chrome/chromium only supports HTTP GET.... if request.headers.get('User-Agent', '').lower().find('webkit') >= 0: method = 'get' - ret = opensearch_xml.format(method=method, host=url_for('index', _external=True)) + if request.headers.get('Host', '').find('https://'): + scheme = 'https' + ret = opensearch_xml.format(method=method, host=url_for('index', _external=True, _scheme=scheme)) resp = Response(response=ret, status=200, mimetype="application/xml")