this post was submitted on 25 Jan 2025
26 points (100.0% liked)

Firefox

18325 readers
927 users here now

A place to discuss the news and latest developments on the open-source browser Firefox

founded 5 years ago
MODERATORS
 

I have a SearXNG instance running locally, and I have a proxy entry for this (search.home). When I go to https://search.home/ in Firefox, it works as expected and brings me to SearXNG, however if I try adding this as my default search, it instead resolves to the IP and not the hostname, which fails because the IP does not have a cert on it and it tries to hit it with https (as would work with the hostname).

This works in Firefox mobile, and every other web browser I've tried on desktop, just not Firefox for some reason. I've tried various about:config changes but so far no luck. Anyone else have a workaround for this? It would be nice if Firefox showed you what it actually has saved for the url/hostname/IP of the search engine in the Search section of the Settings, but sadly it just has the name and shortcut listed.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 3 points 5 days ago (5 children)

Thanks! The output of the xml is as follows

<OpenSearchDescription>
<ShortName>SearXNG</ShortName>
<LongName>SearXNG metasearch</LongName>
<Description>
SearXNG is a metasearch engine that respects your privacy.
</Description>
<InputEncoding>UTF-8</InputEncoding>
<Image type="image/png">
https://192.168.2.20:8080/static/themes/simple/img/favicon.png?60321eeb6e2f478f0e5704529308c594d5924246
</Image>
<Url rel="results" type="text/html" method="GET" template="https://192.168.2.20:8080/search?q=%7BsearchTerms%7D"/>
<Url rel="suggestions" type="application/x-suggestions+json" method="GET" template="https://192.168.2.20:8080/autocompleter?q=%7BsearchTerms%7D"/>
<Url rel="self" type="application/opensearchdescription+xml" method="GET" template="https://192.168.2.20:8080/opensearch.xml"/>
<Query role="example" searchTerms="SearXNG"/>
<moz:SearchForm>https://192.168.2.20:8080/search</moz:SearchForm>
</OpenSearchDescription>

It looks like it's set to use https://192.168.2.20:8080/ for some reason. https://search.home/ will resolve fine but using https with the underlying IP will not.

[–] [email protected] 6 points 5 days ago* (last edited 5 days ago) (4 children)

https://docs.searxng.org/admin/settings/settings_server.html says you need to set base_url, and that by default it's set to $SEARXNG_URL.

however, https://docs.searxng.org/admin/installation-docker.html#searxng-searxng says that if you are running it under docker the environment variable which controls base_url in the config is actually BASE_URL rather than SEARXNG_URL.

(possibly whichever variable it is is currently empty, which might make it construct a URL based on the IP address it is configured to listen on.)

[–] [email protected] 3 points 5 days ago (3 children)

You're a legend. Changing SEARXNG_HOSTNAME in my .env file solved it.

[–] [email protected] 2 points 5 days ago* (last edited 5 days ago) (1 children)

Changing SEARXNG_HOSTNAME in my .env file solved it.

nice. (but, i assume you actually mean SEARXNG_URL? either that or you're deploying it under some environment other than one described in the official repo, because the string HOSTNAME does not appear anywhere in the searxng repo.)

[–] [email protected] 2 points 4 days ago (1 children)

The file in question can be found here

[–] [email protected] 2 points 4 days ago* (last edited 4 days ago)

I see. What a mess.

The instructions at https://docs.searxng.org/admin/installation-docker.html mention that the docker image (which that page tells you to just pull and run) has its "sources hosted at" https://github.com/searxng/searxng-docker and has instructions for running it the image without docker-compose.

But, the Dockerfile source for the image is actually in the main repo at https://github.com/searxng/searxng/blob/master/Dockerfile and the searxng-docker repo actually contains a docker-compose.yaml and different instructions for running it under compose instead.

Anyway, in the docker-compose deployment, SEARXNG_BASE_URL (yet another name for this... neither SEARXNG_URL or BASE_URL, but apparently it sets base_url from it) is constructed from SEARXNG_HOSTNAME on line 58 here: https://github.com/searxng/searxng-docker/blob/a899b72a507074d8618d32d82f5355e23ecbe477/docker-compose.yaml#L58

If I had a github account associated with this pseudonym I might open an issue or PR about this, but I don't and it isn't easy to make one anymore 😢

load more comments (1 replies)
load more comments (1 replies)
load more comments (1 replies)