Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
A

ahmia-site

> 编程语言
Open source

Ahmia.fi - Hidden service search engine

752 stars0 likes0 views
WebsiteGitHub

About

Ahmia.fi - Hidden service search engine

Ahmia is the search engine for .onion domains on the Tor anonymity network. It is led by Juha Nurmi and is based in Finland. This repository contains crawlers used by Ahmia search engine.

Compatibility

The newest version of Ahmia is built with Python 3, Django 5 and Elasticsearch 8. You will need to know these technologies to create a working Ahmia installation. Ahmia crawls using ahmia-crawler.

Prerequisites

Ahmia-index should be installed and running

Installation guide

bash
pip install -r requirements.txt

Configuration

This is a common step, both for local (dev) and production environment.

bash
cp ahmia/example.env ahmia/.env

Please modify the values in .env, to fit your needs. You have to specify at least the postgresql credentials, if you are using the production settings.

Setup Website

Migrate db

bash
python manage.py makemigrations ahmia
python manage.py migrate

Make the static files

bash
python manage.py collectstatic

Copy Elasticsearch CA cert in place

bash
/usr/local/share/ca-certificates/http_ca.crt

Run site in dev mode

Start development server

Development settings use sqlite as a database. Default settings should work out of the box.

bash
python manage.py runserver

Production -- Nginx

NOTE: If your deployment directory isn't /usr/local/lib/ahmia-site replace accordingly

  • Configure and run nginx:
bash
cp banned_terms.map /etc/nginx/
cp conf/nginx/nginx.conf /etc/nginx/nginx.conf
cp conf/nginx/django-ahmia /etc/nginx/sites-enabled/django-ahmia
service nginx start

Increase worker_connections in /etc/nginx/nginx.conf:

events {
        worker_connections 2048;
}

Production -- Gunicorn

EITHER:

  • Run gunicorn via bash scripts (work as daemons ~ edit files to change):
bash
bash ./bin/run-ahmia.sh
bash ./bin/run-ahmia-onion.sh

OR

  • configure and run gunicorn (tested with gunicorn==21.2.0) as systemd daemon
bash
cp conf/gunicorn/*.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable ahmia.service
systemctl status ahmia.service
systemctl enable ahmia-onion.service
systemctl status ahmia-onion.service
systemctl restart gunicorn

Edit your /lib/systemd/system/nginx.service to add ahmia-site.service ahmia-site-onion.service

bash
systemctl edit nginx

[Unit]
After=network-online.target remote-fs.target nss-lookup.target ahmia.service ahmia-onion.service
Requires=ahmia.service ahmia-onion.service

systemctl daemon-reload
systemctl cat nginx

Delete added onions once a week

bash
# Every three days
40 5 */3 * * cd /usr/local/lib/ahmia-site && venv/bin/python manage.py deleteonions >> weeklydelete.log 2>&1

License

Ahmia is licensed under the 3-clause BSD license.

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

Python

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言