mirror of
https://github.com/searxng/searxng
synced 2024-01-01 19:24:07 +01:00
SearXNG is a free internet metasearch engine which aggregates results from various search services and databases. Users are neither tracked nor profiled.
![]() while PR #2357 [1] was being implemented the question came up:
would be better to change the PING resource from CSS to an image so that
some terminal based browser may still able to pass the test [1]
This patch implements a POC in where a <img src=token> tag is loaded instaed a
CSS.
To test this patch activate limiter and link_token method [3] and start a
developer instance::
make run
In your terminal browser open http://127.0.0.1:8888/search?q=foo
If the browser is suitable for the link_token method, it loads the image and the
following messages appear::
DEBUG searx.botdetection.limiter : OK 127.0.0.1/32: /clientft61aak7fzyu6o6v.svg ...
DEBUG searx.botdetection.link_token : token is valid --> True
DEBUG searx.botdetection.link_token : store ping_key for (client) network 127.0.0.1/32 (IP 127.0.0.1) -> SearXNG_limiter.ping[...]
Browsers that do not load images will be blocked: If you try by example::
lynx http://127.0.0.1:8888/search?q=foo
you will see a WARNING message like::
WARNING searx.botdetection.link_token : missing ping (IP: 127.0.0.1/32) / request: SearXNG_limiter.ping[...]
Modern terminal WEB browser do support `<img>` tag as well as CSS:
browsh http://127.0.0.1:8888/search?q=foo
----
[1]
|
||
---|---|---|
.devcontainer | ||
.github | ||
.vscode | ||
dockerfiles | ||
docs | ||
searx | ||
searxng_extra | ||
src/brand | ||
tests | ||
utils | ||
.coveragerc | ||
.dir-locals-template.el | ||
.dockerignore | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.nvmrc | ||
.pylintrc | ||
.tool-versions | ||
.weblate | ||
.yamllint.yml | ||
AUTHORS.rst | ||
babel.cfg | ||
CHANGELOG.rst | ||
CONTRIBUTING.md | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
manage | ||
package.json | ||
PULL_REQUEST_TEMPLATE.md | ||
pyrightconfig-ci.json | ||
pyrightconfig.json | ||
README.rst | ||
requirements-dev.txt | ||
requirements.txt | ||
SECURITY.md | ||
setup.py |
Privacy-respecting, hackable metasearch engine
Searx.space lists ready-to-use running instances.
A user, admin and developer handbook is available on the homepage.
Contact
Ask questions or chat with the SearXNG community (this not a chatbot) on
- IRC
#searxng on libera.chat which is bridged to Matrix.
- Matrix
Setup
- A well maintained Docker image, also built for ARM64 and ARM/v7 architectures.
- Alternatively there are up to date installation scripts.
- For individual setup consult our detailed Step by step instructions.
- To fine-tune your instance, take a look at the Administrator documentation.
Translations
Help translate SearXNG at Weblate
Contributing
Are you a developer? Have a look at our development quickstart guide, it's very easy to contribute. Additionally we have a developer documentation.
Codespaces
You can contribute from your browser using GitHub Codespaces:
- Fork the repository
- Click on the
<> Code
green button - Click on the
Codespaces
tab instead ofLocal
- Click on
Create codespace on master
- VSCode is going to start in the browser
- Wait for
git pull && make install
to appear and then disappear - You have 120 hours per month (see also your list of existing Codespaces)
- You can start SearXNG using
make run
in the terminal or by pressingCtrl+Shift+B