Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

upgrading searx-docker broke it #58

Open
hakova opened this issue Oct 20, 2020 · 7 comments
Open

upgrading searx-docker broke it #58

hakova opened this issue Oct 20, 2020 · 7 comments

Comments

@hakova
Copy link

hakova commented Oct 20, 2020

Hi,

This is what I did:
sudo systemctl stop searx-docker.service
docker-compose pull
sudo systemctl start searx-docker.service

This is now what I have:

brokensearx

As you can see the web page does not render correctly and the 'Start search' button does not work.

I did not change anything else other than what was mentioned above. Your guidance will be greatly appreciated.

Additionally, after posting this message, I recloned this git repository, modified the files .env and Caddyfile to my settings and retried with the same outcome. I tried accessing the site both with Firefox and Chromium with the same results.

@unixfox
Copy link
Member

unixfox commented Oct 21, 2020

If I'm not mistaken it's the update.sh that you need to use instead for updating searx-docker.

@dalf
Copy link
Contributor

dalf commented Oct 21, 2020

Can you check if there are errors in Firefox Development tool:

  • in the console tab ?
  • in the network tab ? what kind of HTTP error ?

Also can you check your uwsgi.ini ?

@hakova
Copy link
Author

hakova commented Oct 22, 2020

If I'm not mistaken it's the update.sh that you need to use instead for updating searx-docker.

Thanks for the suggestion @unixfox. I tried it separately as well, with the same results.

@hakova
Copy link
Author

hakova commented Oct 22, 2020

Can you check if there are errors in Firefox Development tool:
Please see below.

* in the console tab ?
Loading failed for the <script> with source “https://example.com/translations.js”. example.com:11:1
Loading failed for the <script> with source “https://example.com/static/js/jquery-1.11.1.min.js”. example.com:91:1
Loading failed for the <script> with source “https://example.com/static/js/bootstrap.min.js”. example.com:92:1
Loading failed for the <script> with source “https://example.com/static/js/require-2.1.15.min.js”. example.com:94:1
Loading failed for the <script> with source “https://example.com/static/themes/oscar/js/searx.min.js”. example.com:97:1
Loading failed for the <script> with source “https://example.com/static/plugins/js/search_on_category_select.js”. example.com:98:1
Content Security Policy: The page’s settings blocked the loading of a resource at https://https/example.com/translations.js (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/css/bootstrap.min.css (“style-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/themes/oscar/css/logicodev-dark.min.css (“style-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/themes/oscar/css/leaflet.min.css (“style-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/themes/oscar/img/logo_searx_a.png (“img-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/js/jquery-1.11.1.min.js (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/js/bootstrap.min.js (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/js/require-2.1.15.min.js (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/themes/oscar/js/searx.min.js (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/plugins/js/search_on_category_select.js (“script-src”).
Content Security Policy: The page’s settings blocked the loading of a resource at inline (“script-src”). utils.js:35:9
Content Security Policy: The page’s settings blocked the loading of a resource at https://example.com/static/themes/oscar/img/favicon.png (“img-src”). FaviconLoader.jsm:179:19
* in the network tab ? what kind of HTTP error ?
{
  "log": {
    "version": "1.2",
    "creator": {
      "name": "Firefox",
      "version": "81.0.2"
    },
    "browser": {
      "name": "Firefox",
      "version": "81.0.2"
    },
    "pages": [
      {
        "startedDateTime": "2020-10-21T20:05:07.761-05:00",
        "id": "page_1",
        "title": "searx",
        "pageTimings": {
          "onContentLoad": 282,
          "onLoad": 310
        }
      }
    ],
    "entries": [
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:07.761-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/",
          "httpVersion": "HTTP/2",
          "headers": [
            {
              "name": "Host",
              "value": "example.com"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            },
            {
              "name": "DNT",
              "value": "1"
            },
            {
              "name": "Connection",
              "value": "keep-alive"
            },
            {
              "name": "Cookie",
              "value": "categories=general; language=en-US; locale=en; autocomplete=; image_proxy=1; method=POST; safesearch=0; theme=oscar; results_on_new_tab=0; doi_resolver=oadoi.org; oscar-style=logicodev-dark; disabled_engines=; enabled_engines=; disabled_plugins=; enabled_plugins=; tokens="
            },
            {
              "name": "Upgrade-Insecure-Requests",
              "value": "1"
            },
            {
              "name": "Sec-GPC",
              "value": "1"
            },
            {
              "name": "Cache-Control",
              "value": "max-age=0"
            },
            {
              "name": "TE",
              "value": "Trailers"
            }
          ],
          "cookies": [
            {
              "name": "categories",
              "value": "general"
            },
            {
              "name": "language",
              "value": "en-US"
            },
            {
              "name": "locale",
              "value": "en"
            },
            {
              "name": "autocomplete",
              "value": ""
            },
            {
              "name": "image_proxy",
              "value": "1"
            },
            {
              "name": "method",
              "value": "POST"
            },
            {
              "name": "safesearch",
              "value": "0"
            },
            {
              "name": "theme",
              "value": "oscar"
            },
            {
              "name": "results_on_new_tab",
              "value": "0"
            },
            {
              "name": "doi_resolver",
              "value": "oadoi.org"
            },
            {
              "name": "oscar-style",
              "value": "logicodev-dark"
            },
            {
              "name": "disabled_engines",
              "value": ""
            },
            {
              "name": "enabled_engines",
              "value": ""
            },
            {
              "name": "disabled_plugins",
              "value": ""
            },
            {
              "name": "enabled_plugins",
              "value": ""
            },
            {
              "name": "tokens",
              "value": ""
            }
          ],
          "queryString": [],
          "headersSize": 666
        },
        "response": {
          "status": 200,
          "statusText": "OK",
          "httpVersion": "HTTP/2",
          "headers": [
            {
              "name": "cache-control",
              "value": "no-cache, no-store"
            },
            {
              "name": "content-encoding",
              "value": "gzip"
            },
            {
              "name": "content-security-policy",
              "value": "upgrade-insecure-requests; default-src 'none'; script-src 'self'; style-src 'self' 'unsafe-inline'; form-action 'self'; font-src 'self'; frame-ancestors 'self'; base-uri 'self'; connect-src 'self' https://overpass-api.de; img-src 'self' data: https://*.tile.openstreetmap.org; frame-src https://www.youtube-nocookie.com https://player.vimeo.com https://www.dailymotion.com https://www.deezer.com https://www.mixcloud.com https://w.soundcloud.com https://embed.spotify.com"
            },
            {
              "name": "content-type",
              "value": "text/html; charset=utf-8"
            },
            {
              "name": "date",
              "value": "Thu, 22 Oct 2020 01:05:07 GMT"
            },
            {
              "name": "feature-policy",
              "value": "accelerometer 'none';ambient-light-sensor 'none'; autoplay 'none';camera 'none';encrypted-media 'none';focus-without-user-activation 'none'; geolocation 'none';gyroscope 'none';magnetometer 'none';microphone 'none';midi 'none';payment 'none';picture-in-picture 'none'; speaker 'none';sync-xhr 'none';usb 'none';vr 'none'"
            },
            {
              "name": "pragma",
              "value": "no-cache"
            },
            {
              "name": "referrer-policy",
              "value": "no-referrer"
            },
            {
              "name": "server-timing",
              "value": "total;dur=132.458"
            },
            {
              "name": "strict-transport-security",
              "value": "max-age=31536000; includeSubDomains; preload"
            },
            {
              "name": "vary",
              "value": "Accept-Encoding"
            },
            {
              "name": "x-content-type-options",
              "value": "nosniff"
            },
            {
              "name": "x-frame-options",
              "value": "SAMEORIGIN"
            },
            {
              "name": "x-robots-tag",
              "value": "noindex, noarchive, nofollow"
            },
            {
              "name": "x-xss-protection",
              "value": "1; mode=block"
            },
            {
              "name": "content-length",
              "value": "3440"
            },
            {
              "name": "X-Firefox-Spdy",
              "value": "h2"
            }
          ],
          "cookies": [],
          "content": {
            "mimeType": "text/html; charset=utf-8",
            "size": 11093,
            "text": "<!DOCTYPE html>\n<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"en\" xml:lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\" />\n    <meta name=\"description\" content=\"searx - a privacy-respecting, hackable metasearch engine\" />\n    <meta name=\"keywords\" content=\"searx, search, search engine, metasearch, meta search\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"generator\" content=\"searx/0.17.0-181-e78bfd4d\">\n    <meta name=\"referrer\" content=\"no-referrer\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1 , maximum-scale=2.0, user-scalable=1\" />\n    <script src=\"https://example.com/translations.js\"></script>\n    <title>searx</title>\n    <link rel=\"stylesheet\" href=\"https://example.com/static/css/bootstrap.min.css\" type=\"text/css\" />\n    <link rel=\"stylesheet\" href=\"https://example.com/static/themes/oscar/css/logicodev-dark.min.css\" type=\"text/css\" />\n    <link rel=\"stylesheet\" href=\"https://example.com/static/themes/oscar/css/leaflet.min.css\" type=\"text/css\" />\n    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->\n    <!--[if lt IE 9]>\n      <script src=\"https://example.com/static/js/html5shiv.min.js\"></script>\n      <script src=\"https://example.com/static/js/respond.min.js\"></script>\n    <![endif]-->\n\n    <link rel=\"shortcut icon\" href=\"https://example.com/static/themes/oscar/img/favicon.png\" />\n\n\n    <link title=\"searx\" type=\"application/opensearchdescription+xml\" rel=\"search\" href=\"/opensearch.xml?method=POST&amp;autocomplete=\"/>\n    <noscript>\n        <style type=\"text/css\">\n            .tab-content > .active_if_nojs, .active_if_nojs {display: block !important; visibility: visible !important;}\n            .margin_top_if_nojs {margin-top: 20px;}\n            .hide_if_nojs {display: none !important;overflow: hidden !important;}\n            .disabled_if_nojs {pointer-events: none; cursor: default; text-decoration: line-through;}\n        </style>\n    </noscript>\n</head>\n<body class=\"index_endpoint\" >\n<div class=\"searx-navbar\"><span class=\"instance pull-left\"><a href=\"https://example.com/\">searx</a></span><span class=\"pull-right\"><a href=\"https://example.com/about\">about</a><a href=\"https://example.com/preferences\">preferences</a></span></div>\n    <div class=\"container\">\n\n\n<div class=\"container-fluid\">\n    <div class=\"row\">\n        <div class=\"text-center col-sm-12 col-md-12\">\n                <div class=\"text-hide center-block\" id=\"main-logo\">\n                    <img class=\"center-block img-responsive\" src=\"https://example.com/static/themes/oscar/img/logo_searx_a.png\" alt=\"searx logo\" />\n                    searx\n                </div>\n        </div>\n    </div>\n    <div class=\"row\">\n        <div class=\"text-center col-sm-12 col-md-12\">\n\n<form method=\"POST\" action=\"https://example.com/\" id=\"search_form\" role=\"search\">\n    <div class=\"input-group col-md-8 col-md-offset-2\">\n        <input type=\"search\" autofocus name=\"q\" class=\"form-control input-lg autofocus\" id=\"q\" placeholder=\"Search for...\" aria-label=\"Search for...\" autocomplete=\"off\" value=\"\" accesskey=\"s\">\n        <span class=\"input-group-btn\">\n            <button type=\"submit\" class=\"btn btn-default input-lg\" aria-label=\"Start search\"><span class=\"hide_if_nojs\"><span class=\"glyphicon glyphicon-search\"></span></span><span class=\"hidden active_if_nojs\">Start search</span></button>\n            <button type=\"reset\" class=\"btn btn-default input-lg\" aria-label=\"Clear search\"><span class=\"hide_if_nojs\"><span class=\"glyphicon glyphicon-remove\"></span></span><span class=\"hidden active_if_nojs\">Clear</span></button>\n        </span>\n    </div>\n    <div class=\"col-md-8 col-md-offset-2  advanced\">\n<input type=\"checkbox\" name=\"advanced_search\" class=\"visually-hidden\" id=\"check-advanced\" >\n<label for=\"check-advanced\"><span class=\"glyphicon glyphicon-cog\"></span>Advanced settings</label>\n<div id=\"advanced-search-container\">\n<div id=\"categories\"><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_general\" name=\"category_general\" checked=\"checked\" /><label for=\"checkbox_general\">general</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_files\" name=\"category_files\"  /><label for=\"checkbox_files\">files</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_images\" name=\"category_images\"  /><label for=\"checkbox_images\">images</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_it\" name=\"category_it\"  /><label for=\"checkbox_it\">it</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_map\" name=\"category_map\"  /><label for=\"checkbox_map\">map</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_music\" name=\"category_music\"  /><label for=\"checkbox_music\">music</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_news\" name=\"category_news\"  /><label for=\"checkbox_news\">news</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_science\" name=\"category_science\"  /><label for=\"checkbox_science\">science</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_social_media\" name=\"category_social media\"  /><label for=\"checkbox_social_media\">social media</label><input class=\"hidden\" type=\"checkbox\" id=\"checkbox_videos\" name=\"category_videos\"  /><label for=\"checkbox_videos\">videos</label></div>\n  <div class=\"row\">\n    <div class=\"col-xs-6\"><label class=\"visually-hidden\" for=\"time-range\">Time range</label>\n<select name=\"time_range\" id=\"time-range\" class=\"custom-select form-control\" accesskey=\"t\"><option id=\"time-range-anytime\" value=\"\" selected>Anytime</option><option id=\"time-range-day\" value=\"day\" >Last day</option><option id=\"time-range-week\" value=\"week\" >Last week</option><option id=\"time-range-month\" value=\"month\" >Last month</option><option id=\"time-range-year\" value=\"year\" >Last year</option></select></div>\n    <div class=\"col-xs-6\"><label class=\"visually-hidden\" for=\"language\">Language</label>\n<select class=\"language form-control custom-select\" id=\"language\" name=\"language\" accesskey=\"l\">\n  <option value=\"all\" >Default language</option><option value=\"af-ZA\" >Afrikaans- af-ZA</option><option value=\"ca-ES\" >Català- ca-ES</option><option value=\"da-DK\" >Dansk- da-DK</option><option value=\"de\" >Deutsch- de</option><option value=\"de-AT\" >Deutsch(Österreich) - de-AT</option><option value=\"de-CH\" >Deutsch(Schweiz) - de-CH</option><option value=\"de-DE\" >Deutsch(Deutschland) - de-DE</option><option value=\"et-EE\" >Eesti- et-EE</option><option value=\"en\" >English- en</option><option value=\"en-AU\" >English(Australia) - en-AU</option><option value=\"en-CA\" >English(Canada) - en-CA</option><option value=\"en-GB\" >English(United Kingdom) - en-GB</option><option value=\"en-IE\" >English(Ireland) - en-IE</option><option value=\"en-IN\" >English(India) - en-IN</option><option value=\"en-NZ\" >English(New Zealand) - en-NZ</option><option value=\"en-PH\" >English(Philippines) - en-PH</option><option value=\"en-SG\" >English(Singapore) - en-SG</option><option value=\"en-US\" selected=\"selected\">English(United States) - en-US</option><option value=\"es\" >Español- es</option><option value=\"es-AR\" >Español(Argentina) - es-AR</option><option value=\"es-CL\" >Español(Chile) - es-CL</option><option value=\"es-ES\" >Español(España) - es-ES</option><option value=\"es-MX\" >Español(México) - es-MX</option><option value=\"fr\" >Français- fr</option><option value=\"fr-BE\" >Français(Belgique) - fr-BE</option><option value=\"fr-CA\" >Français(Canada) - fr-CA</option><option value=\"fr-CH\" >Français(Suisse) - fr-CH</option><option value=\"fr-FR\" >Français(France) - fr-FR</option><option value=\"hr-HR\" >Hrvatski- hr-HR</option><option value=\"id-ID\" >Indonesia- id-ID</option><option value=\"it-IT\" >Italiano- it-IT</option><option value=\"sw-TZ\" >Kiswahili- sw-TZ</option><option value=\"lv-LV\" >Latviešu- lv-LV</option><option value=\"lt-LT\" >Lietuvių- lt-LT</option><option value=\"hu-HU\" >Magyar- hu-HU</option><option value=\"ms-MY\" >Melayu- ms-MY</option><option value=\"nl\" >Nederlands- nl</option><option value=\"nl-BE\" >Nederlands(België) - nl-BE</option><option value=\"nl-NL\" >Nederlands(Nederland) - nl-NL</option><option value=\"nb-NO\" >Norsk Bokmål- nb-NO</option><option value=\"pl-PL\" >Polski- pl-PL</option><option value=\"pt\" >Português- pt</option><option value=\"pt-BR\" >Português(Brasil) - pt-BR</option><option value=\"pt-PT\" >Português(Portugal) - pt-PT</option><option value=\"ro-RO\" >Română- ro-RO</option><option value=\"sk-SK\" >Slovenčina- sk-SK</option><option value=\"sl-SI\" >Slovenščina- sl-SI</option><option value=\"sr-RS\" >Srpski- sr-RS</option><option value=\"fi-FI\" >Suomi- fi-FI</option><option value=\"sv-SE\" >Svenska- sv-SE</option><option value=\"vi-VN\" >Tiếng Việt- vi-VN</option><option value=\"tr-TR\" >Türkçe- tr-TR</option><option value=\"is-IS\" >Íslenska- is-IS</option><option value=\"cs-CZ\" >Čeština- cs-CZ</option><option value=\"el-GR\" >Ελληνικά- el-GR</option><option value=\"be-BY\" >Беларуская- be-BY</option><option value=\"bg-BG\" >Български- bg-BG</option><option value=\"ru-RU\" >Русский- ru-RU</option><option value=\"uk-UA\" >Українська- uk-UA</option><option value=\"hy-AM\" >Հայերեն- hy-AM</option><option value=\"he-IL\" >עברית- he-IL</option><option value=\"ar-EG\" >العربية- ar-EG</option><option value=\"fa-IR\" >فارسی- fa-IR</option><option value=\"th-TH\" >ไทย- th-TH</option><option value=\"zh\" >中文- zh</option><option value=\"zh-CN\" >中文(中国) - zh-CN</option><option value=\"zh-TW\" >中文(台灣) - zh-TW</option><option value=\"ja-JP\" >日本語- ja-JP</option><option value=\"ko-KR\" >한국어- ko-KR</option></select></div>\n  </div>\n</div>    </div>\n\n</form><!-- / #search_form_full -->        </div>\n    </div>\n</div>\n\n    </div>\n    <div class=\"footer\">\n        <div class=\"container\">\n            <p class=\"text-muted\">\n                <small>\n                    Powered by <a href=\"https://searx.github.io/searx\">searx</a> - 0.17.0-181-e78bfd4d - a privacy-respecting, hackable metasearch engine<br/>\n                    <a href=\"https://github.com/searx/searx.git\">Source code</a> |\n                    <a href=\"https://github.com/searx/searx/issues\">Issue tracker</a> |\n                    <a href=\"https://searx.space\">Public instances</a>\n                </small>\n            </p>\n        </div>\n    </div>\n    <script src=\"https://example.com/static/js/jquery-1.11.1.min.js\"></script>\n    <script src=\"https://example.com/static/js/bootstrap.min.js\"></script>\n\n    <script src=\"https://example.com/static/js/require-2.1.15.min.js\"></script>\n    <script src=\"https://example.com/static/themes/oscar/js/searx.min.js\"\n            data-method=\"POST\"\n            data-autocompleter=\"false\"></script>\n    <script src=\"https://example.com/static/plugins/js/search_on_category_select.js\"></script>\n    <noscript>\n      <style>\n        .glyphicon { display: none; }\n      </style>\n    </noscript>\n</body>\n</html>"
          },
          "redirectURL": "",
          "headersSize": 1348,
          "bodySize": 4788
        },
        "cache": {},
        "timings": {
          "blocked": 0,
          "dns": 0,
          "connect": 0,
          "ssl": 0,
          "send": 0,
          "wait": 137,
          "receive": 0
        },
        "time": 137,
        "_securityState": "secure",
        "serverIPAddress": "123.456.78.9", #modified by me
        "connection": "11111" #modified by me
      },
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:08.026-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/translations.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Host",
              "value": "https"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "*/*"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            }
          ],
          "cookies": [],
          "queryString": [],
          "headersSize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {},
          "redirectURL": "",
          "bodySize": -1
        },
        "cache": {},
        "timings": {},
        "time": 0
      },
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:08.029-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/static/js/jquery-1.11.1.min.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Host",
              "value": "https"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "*/*"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            }
          ],
          "cookies": [],
          "queryString": [],
          "headersSize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {},
          "redirectURL": "",
          "bodySize": -1
        },
        "cache": {},
        "timings": {},
        "time": 0
      },
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:08.030-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/static/js/bootstrap.min.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Host",
              "value": "https"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "*/*"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            }
          ],
          "cookies": [],
          "queryString": [],
          "headersSize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {},
          "redirectURL": "",
          "bodySize": -1
        },
        "cache": {},
        "timings": {},
        "time": 0
      },
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:08.031-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/static/js/require-2.1.15.min.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Host",
              "value": "https"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "*/*"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            }
          ],
          "cookies": [],
          "queryString": [],
          "headersSize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {},
          "redirectURL": "",
          "bodySize": -1
        },
        "cache": {},
        "timings": {},
        "time": 0
      },
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:08.032-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/static/themes/oscar/js/searx.min.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Host",
              "value": "https"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "*/*"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            }
          ],
          "cookies": [],
          "queryString": [],
          "headersSize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {},
          "redirectURL": "",
          "bodySize": -1
        },
        "cache": {},
        "timings": {},
        "time": 0
      },
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:08.033-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/static/plugins/js/search_on_category_select.js",
          "httpVersion": "",
          "headers": [
            {
              "name": "Host",
              "value": "https"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "*/*"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            }
          ],
          "cookies": [],
          "queryString": [],
          "headersSize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {},
          "redirectURL": "",
          "bodySize": -1
        },
        "cache": {},
        "timings": {},
        "time": 0
      },
      {
        "pageref": "page_1",
        "startedDateTime": "2020-10-21T20:05:08.056-05:00",
        "request": {
          "bodySize": 0,
          "method": "GET",
          "url": "https://example.com/static/themes/oscar/img/favicon.png",
          "httpVersion": "",
          "headers": [
            {
              "name": "Host",
              "value": "https"
            },
            {
              "name": "User-Agent",
              "value": "Mozilla/5.0 (X11; Linux x86_64; rv:81.0) Gecko/20100101 Firefox/81.0"
            },
            {
              "name": "Accept",
              "value": "image/webp,*/*"
            },
            {
              "name": "Accept-Language",
              "value": "en-US,en;q=0.5"
            },
            {
              "name": "Accept-Encoding",
              "value": "gzip, deflate, br"
            }
          ],
          "cookies": [],
          "queryString": [],
          "headersSize": 0
        },
        "response": {
          "status": 0,
          "statusText": "",
          "httpVersion": "",
          "headers": [],
          "cookies": [],
          "content": {},
          "redirectURL": "",
          "bodySize": -1
        },
        "cache": {},
        "timings": {},
        "time": 0
      }
    ]
  }
}

Also can you check your uwsgi.ini ?

[uwsgi]
\# Who will run the code
uid = searx
gid = searx

\# Number of workers (usually CPU count)
workers = 4

\# The right granted on the created socket
chmod-socket = 666

\# Plugin to use and interpretor config
single-interpreter = true
master = true
plugin = python3
lazy-apps = true
enable-threads = true

\# Module to import
module = searx.webapp

\# Virtualenv and python path
pythonpath = /usr/local/searx/
chdir = /usr/local/searx/searx/

\# Disable logging for privacy
disable-logging=True

\# But keep errors for 2 days
touch-logrotate = /run/uwsgi-logrotate
unique-cron = 15 0 -1 -1 -1 { touch /run/uwsgi-logrotate  }
log-backupname = /var/log/uwsgi/uwsgi.log.1
logto = /var/log/uwsgi/uwsgi.log

\# No keep alive
\# See https://github.com/searx/searx-docker/issues/24
add-header = Connection: close

\# uwsgi serves the static files
\# expires set to one day as Flask does
static-map = /static=/usr/local/searx/searx/static
static-expires = /* 864000
static-gzip-all = True
offload-threads = %k

In this whole process I noticed that the problem does not exist if I use the unmodified Caddyfile. Once I change the http and https port settings there, I can reproduce the problem reliably.

@dalf
Copy link
Contributor

dalf commented Oct 22, 2020

First: I see example.com everywhere, I guess you have redacted your hostname ?

The CSP headers block the loading ( Content Security Policy: The page’s settings blocked the loading of a resource )

I guess if you comment out this block

searx-docker/Caddyfile

Lines 77 to 84 in 7ad4d49

# CSP (see http://content-security-policy.com/ )
header @morty {
Content-Security-Policy "default-src 'none'; style-src 'self' 'unsafe-inline'; form-action 'self'; frame-ancestors 'self'; base-uri 'self'; img-src 'self' data:; font-src 'self'; frame-src 'self'"
}
header @notmorty {
Content-Security-Policy "upgrade-insecure-requests; default-src 'none'; script-src 'self'; style-src 'self' 'unsafe-inline'; form-action 'self'; font-src 'self'; frame-ancestors 'self'; base-uri 'self'; connect-src 'self' https://overpass-api.de; img-src 'self' data: https://*.tile.openstreetmap.org; frame-src https://www.youtube-nocookie.com https://player.vimeo.com https://www.dailymotion.com https://www.deezer.com https://www.mixcloud.com https://w.soundcloud.com https://embed.spotify.com"
}

it will work, but this is not the solution.

In this whole process I noticed that the problem does not exist if I use the unmodified Caddyfile. Once I change the http and https port settings there, I can reproduce the problem reliably.

How do you specify the HTTPS / HTTP ports ?

According to https://caddyserver.com/docs/caddyfile/options

you can replace

{
admin off
}

by

{
	admin off
	http_port   8080
	https_port  8443
}

@hakova
Copy link
Author

hakova commented Oct 23, 2020

Thank you for your guidance.

First: I see example.com everywhere, I guess you have redacted your hostname ?

I am sorry, I should have specified it. Yes, I redacted my hostname, its IP number and the port.

The CSP headers block the loading ( Content Security Policy: The page’s settings blocked the loading of a resource )

I guess if you comment out this block

searx-docker/Caddyfile

Lines 77 to 84 in 7ad4d49

# CSP (see http://content-security-policy.com/ )
header @morty {
Content-Security-Policy "default-src 'none'; style-src 'self' 'unsafe-inline'; form-action 'self'; frame-ancestors 'self'; base-uri 'self'; img-src 'self' data:; font-src 'self'; frame-src 'self'"
}
header @notmorty {
Content-Security-Policy "upgrade-insecure-requests; default-src 'none'; script-src 'self'; style-src 'self' 'unsafe-inline'; form-action 'self'; font-src 'self'; frame-ancestors 'self'; base-uri 'self'; connect-src 'self' https://overpass-api.de; img-src 'self' data: https://*.tile.openstreetmap.org; frame-src https://www.youtube-nocookie.com https://player.vimeo.com https://www.dailymotion.com https://www.deezer.com https://www.mixcloud.com https://w.soundcloud.com https://embed.spotify.com"
}

it will work, but this is not the solution.

I agree, it was working before the update with this block not commented out.

How do you specify the HTTPS / HTTP ports ?

{
	admin off
	http_port   8080
	https_port  8443
}

I essentially have the same syntax with port numbers in 20000s, which again used to work without problem before the update...

Another thing I failed to mention is there is another docker container on this host that serves an nginx instance at port 80, and that is the reason why I changed the port settings for searx. I don't think this would be the deal breaker either, since both containers were fully functional before the update. Nginx container is still functional at this time.

@hakova
Copy link
Author

hakova commented Dec 6, 2020

Is there no suggestion about how to fix this? I tried rebuilding the container from scratch but the service did not start when Caddyfile was modified to include the following lines:

http_port 20000\n https_port 20001

Is there a way to publish the container ports to the host other than 80 and 443? Modifying the Caddyfile does not seem to work anymore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants