SSD Nodes Learn Hosting plans →
Hướng dẫn Matt ConnorBởi Matt Connor · Cập nhật ngày 2026-08-29

Searx hay SearXNG: dự án nào còn được duy trì?

Dự án Searx gốc đã ngừng cập nhật từ tháng 4 năm 2023. Hãy chuyển sang dùng SearXNG để đảm bảo tính bảo mật và tương thích. Xem hướng dẫn kiểm tra trạng thái và cấu hình mới.

Searx hay SearXNG: bạn nên cài đặt cái nào?

Searx và SearXNG là hai dự án khác nhau với tên gọi gần như giống hệt nhau, và chỉ một trong số đó còn nhận được các bản sửa lỗi. Hãy cài đặt SearXNG. Dự án Searx gốc đã không có commit mã nguồn nào kể từ tháng 4 năm 2023, và file README của nó đã nêu rõ vị trí trong một dòng: "Searx không còn được duy trì nữa."

Điều này để lại một vấn đề thực tế thay vì vấn đề triết học. Hai dự án này dùng chung một ảnh chụp màn hình, hầu hết file cấu hình và một nửa cái tên, vì vậy một hướng dẫn viết cho cái này trông có vẻ áp dụng được cho cái kia. Thực tế thì không. File cài đặt nằm ở vị trí khác, cơ chế bảo vệ bot là mới, và tên gói đã không còn tồn tại trên các bản phân phối Ubuntu hiện tại. Những nội dung dưới đây là sự phân tách, các lệnh để tự kiểm tra trạng thái, và danh sách những thay đổi đối với người đang thiết lập một instance.

Searx là gì và nguồn gốc của SearXNG

Searx là một công cụ tìm kiếm tổng hợp (metasearch engine). Nó không tự lưu trữ chỉ mục (index) riêng. Nó nhận truy vấn của bạn, chuyển tiếp đến các dịch vụ tìm kiếm khác như Bing, DuckDuckGo hoặc Wikipedia, sau đó hợp nhất kết quả trả về vào một trang duy nhất. Lợi ích là các dịch vụ đó chỉ thấy địa chỉ IP của máy chủ thay vì của bạn. Cái giá phải trả là công tác bảo trì. Mỗi engine là một đoạn mã nhỏ dùng để phân tích (parse) HTML hoặc API của bên thứ ba, vì vậy một engine sẽ bị hỏng bất cứ khi nào phía upstream thay đổi. Sức khỏe của một công cụ tìm kiếm tổng hợp phụ thuộc hoàn toàn vào những người sửa chữa các module engine của nó.

Repository của searx được tạo vào tháng 10 năm 2013. Vào tháng 4 năm 2021, một cựu maintainer đã tạo ra SearXNG như một bản fork từ dự án này. "NG" là viết tắt của next generation (thế hệ tiếp theo). Bản thân file README của searx mô tả cả hai dự án song song, và mô tả đó vẫn là bản tóm tắt rõ ràng nhất về sự phân tách này:

SearXNG là một bản fork của searx, được tạo bởi một cựu maintainer của searx.
SearXNG có các bản phát hành theo dạng rolling release, các dependency được cập nhật thường xuyên hơn và các engine được sửa lỗi nhanh hơn.

Bất đồng đằng sau việc fork này nằm ở vấn đề chẩn đoán. Searx coi dữ liệu sử dụng là thứ mà một instance không nên lưu giữ, và các thiết lập mặc định của nó đã nêu rõ điều đó: enable_stats: False # activate /stats page - note: it may leak usage data. SearXNG đưa ra quyết định ngược lại và mặc định tích hợp enable_metrics: true. Những số liệu này là thứ tạo nên các thanh thời gian phản hồi và các trang báo lỗi, giúp việc tìm kiếm và sửa chữa một engine bị hỏng trở nên dễ dàng. Cả hai quan điểm đều có lý lẽ riêng. Chỉ có một trong số đó là vẫn tiếp tục phát hành code.

Searx đã chết chưa? Cách tự kiểm tra

"Chết" không phải là trạng thái mà GitHub báo cáo, vì vậy hãy đọc hai tín hiệu hiện có và tự quyết định. Tín hiệu đầu tiên là repository có bị lưu trữ (archived) hay không và lần cuối cùng có push code là khi nào.

curl -s https://api.github.com/repos/searx/searx | jq -r '.archived, .pushed_at'
curl -s https://api.github.com/repos/searxng/searxng | jq -r '.archived, .pushed_at'

Vào ngày 22 tháng 8 năm 2026, lệnh đầu tiên in ra false2026-05-14T10:02:22Z. Lệnh thứ hai in ra false cùng với dấu thời gian của ngày bạn chạy lệnh. Hãy lưu ý giá trị đầu tiên. Repository searx không bị lưu trữ và không ai khóa cửa, đó là lý do tại sao câu hỏi này cứ lặp lại.

pushed_at là một tín hiệu yếu nếu đứng một mình, vì nó thay đổi khi có bất kỳ push nào vào bất kỳ branch nào, bao gồm cả việc thay đổi một dòng tài liệu. Thay vào đó, hãy đọc danh sách commit.

curl -s 'https://api.github.com/repos/searx/searx/commits?per_page=5' \
  | jq -r '.[] | .commit.committer.date[:10] + "  " + (.commit.message | split("\n")[0])'

Tính đến tháng 8 năm 2026, lệnh đó in ra:

2026-05-14  [doc] add hister reference
2023-09-07  Searx is no longer maintained
2023-04-05  Fix quoting issue in search_operator plugin (#3479)
2023-04-04  Bump pallets-sphinx-themes from 2.0.2 to 2.0.3 (#3450)
2023-04-04  Bump selenium from 4.7.2 to 4.8.3 (#3490)

Hãy đọc từ dưới lên trên. Công việc thông thường dừng lại vào tháng 4 năm 2023. Commit tháng 9 năm 2023 là lúc các maintainer viết thông báo vào README. Commit duy nhất kể từ đó chỉ là tài liệu, vì tác giả gốc đã chuyển sang Hister, một công cụ tìm kiếm lập chỉ mục các trang và file bạn chọn thay vì truy vấn các engine khác. Đó là một ý tưởng khác, và là một ý tưởng hữu ích nếu thứ bạn thực sự muốn là một công cụ tìm kiếm cá nhân cho nội dung của riêng bạn.

Tín hiệu thứ hai là việc đóng gói (packaging), và packaging là thứ mà hầu hết các hướng dẫn cũ đang âm thầm phụ thuộc vào.

  • PyPI giữ một bản release searx, phiên bản 0.17.0, được upload vào tháng 7 năm 2020. pip install searx chạy thành công và cung cấp cho bạn code từ chín tháng trước khi bản fork tồn tại.
  • Debian đã phát hành searx 1.1.0 trong Debian 12 (bookworm) và vẫn duy trì nó trong bản unstable. Nó đã bị xóa khỏi bản testing vào tháng 10 năm 2023, vì vậy Debian 13 (trixie) hoàn toàn không có gói searx.
  • Ubuntu lần cuối phát hành nó trong bản 22.04, ở phiên bản 1.0.0. Trên Ubuntu 24.04, sudo apt install searx kết thúc với E: Unable to locate package searx.
  • searx.space, thư mục instance công cộng mà dự án luôn hướng người dùng tới, hiện nay liệt kê các instance của SearXNG.

Vì vậy, đây là trạng thái trung thực. Code vẫn công khai, nó vẫn chạy, và bạn có thể clone rồi khởi động nó ngay hôm nay. Thứ bạn không nhận được là các bản sửa lỗi engine hoặc cập nhật bảo mật, và đối với một metasearch engine, đó là toàn bộ công việc. Các engine sẽ hỏng theo lịch trình của người khác. Một instance không được bảo trì sẽ trả về ít kết quả hơn mỗi tháng mà không cần ai đụng vào máy chủ.

Những thay đổi cho một instance mới

File cấu hình đã di chuyển và hiện là một overlay

Trên Searx, bạn chỉnh sửa searx/settings.yml bên trong cây mã nguồn. Trên SearXNG, file này nằm tại /etc/searxng/settings.yml và tiến trình tìm thấy nó thông qua biến môi trường SEARXNG_SETTINGS_PATH. Template mà trình cài đặt sao chép vào đó rất ngắn gọn:

use_default_settings: true

general:
  debug: false
  instance_name: "SearXNG"

search:
  safe_search: 2
  autocomplete: 'duckduckgo'
  formats:
    - html

server:
  # Is overwritten by ${SEARXNG_SECRET}
  secret_key: "ultrasecretkey"
  limiter: true
  image_proxy: true

valkey:
  # URL to connect valkey database. Is overwritten by ${SEARXNG_VALKEY_URL}.
  url: valkey://localhost:6379/0

use_default_settings: true là dòng thay đổi cách bạn làm việc. Với nó, file của bạn chỉ chứa các ghi đè (overrides), và mọi khóa bạn bỏ qua sẽ lấy giá trị mặc định được đóng gói sẵn. Nếu không có nó, file của bạn phải mô tả toàn bộ cấu hình, cho từng engine một. Đó là lý do tại sao nhiều người gặp tình trạng instance khởi động sạch sẽ nhưng không tìm thấy gì cả. Một file cấu hình Searx cũ dán vào đường dẫn này là một cấu hình đầy đủ với các tên khóa khác nhau, vì vậy nó đi theo hướng thứ hai và hoạt động không như ý.

Khóa bí mật (secret key) chặn tiến trình

sudo -H sed -i -e "s/ultrasecretkey/$(openssl rand -hex 16)/g" \
              "/etc/searxng/settings.yml"

Hãy chạy lệnh đó một lần sau khi sao chép template. Nếu bỏ qua, SearXNG sẽ ghi log một dòng rồi thoát với trạng thái 1, vì webapp.py so sánh khóa này với giá trị trong template trước khi phục vụ bất kỳ yêu cầu nào:

server.secret_key is not changed. Please use something else instead of ultrasecretkey.

Kiểm tra này bị bỏ qua khi general.debug là true, vì vậy một instance có thể chạy ổn trong phiên debug nhưng sau đó từ chối khởi động dưới systemd hoặc trong container. Một container khởi động lại liên tục với dòng đó trong docker compose logs chính là do kiểm tra này kích hoạt, không phải do image bị lỗi.

Bộ giới hạn (limiter) là tính năng mới và cần Valkey

Searx không có tính năng giới hạn tốc độ (rate limiting) bên trong ứng dụng. Các instance Searx công cộng đặt các dịch vụ riêng biệt phía trước nó, như filtron để lọc yêu cầu và morty để proxy nội dung kết quả. Cả hai repository đó đều không có commit mới từ năm 2023.

SearXNG tự thực hiện công việc đó. Giới hạn tốc độ và phát hiện bot được xử lý bởi limiter, bật bằng server.limiter. Nó là false trong các mặc định được xuất xưởng và true trong template của trình cài đặt, và nó cần một database Valkey để lưu các bộ đếm. Valkey là một bản fork của Redis và Ubuntu 24.04 đã đóng gói nó:

sudo apt install -y valkey-server
server:
  limiter: true

valkey:
  url: valkey://localhost:6379/0

Các hướng dẫn viết trước khi đổi tên này cấu hình một block redis: thay thế, vì vậy hãy sao chép tên khóa từ tài liệu limiter hiện tại. Việc tinh chỉnh nằm trong file thứ hai, /etc/searxng/limiter.toml, và server.public_instance: true bật tính năng phát hiện bot nghiêm ngặt hơn mà một instance công cộng cần, bao gồm cả phương thức link token. Kết quả dễ thấy là một số yêu cầu bị trả về HTTP 429 thay vì kết quả, bao gồm cả các yêu cầu của chính bạn nếu bạn viết script tương tác với instance. Vấn đề đó có trang riêng tại đây: tại sao một instance SearXNG trả về 429 Too Many Requests.

Các engine tự tạm dừng và thời gian timeout rất dài

Khi một dịch vụ upstream trả về CAPTCHA hoặc trang giới hạn tốc độ, SearXNG sẽ đưa ra một ngoại lệ (exception) và ngừng truy vấn engine đó trong một khoảng thời gian nhất định thay vì cố gắng thử lại liên tục. Các giá trị mặc định nằm trong searx/settings.yml dưới mục search.suspended_times. Đây là các giá trị 6 được công bố tính đến tháng 8 năm 2026:

ChartSearXNG default engine suspension times, in seconds
The data behind this chart
[
  {
    "label": "SearxEngineAccessDenied",
    "suspend_seconds": "180"
  },
  {
    "label": "SearxEngineCaptcha",
    "suspend_seconds": "3,600"
  },
  {
    "label": "SearxEngineTooManyRequests",
    "suspend_seconds": "180"
  },
  {
    "label": "cf_SearxEngineCaptcha",
    "suspend_seconds": "1,296,000"
  },
  {
    "label": "cf_SearxEngineAccessDenied",
    "suspend_seconds": "86,400"
  },
  {
    "label": "recaptcha_SearxEngineCaptcha",
    "suspend_seconds": "604,800"
  }
]

Một phản hồi từ chối truy cập đơn thuần sẽ tạm dừng engine đó trong 180 giây. Một CAPTCHA sẽ tạm dừng nó trong 3,600 giây. Một Cloudflare CAPTCHA tạm dừng trong 1,296,000 giây, tức là mười lăm ngày, và Google reCAPTCHA trong 604,800 giây, tức là một tuần. Các giá trị dài này là có chủ đích, vì việc tiếp tục truy vấn sau khi dịch vụ đã gắn cờ địa chỉ IP là cách khiến IP của instance bị chặn vĩnh viễn.

Trong khi một engine bị tạm dừng, trang kết quả sẽ bỏ qua nó và báo cáo trong block sidebar có tiêu đề "Messages from the search engines", và /stats/errors liệt kê những gì đã thất bại. Một instance mới cài đặt trả về ít kết quả thường là do cơ chế này, không phải do cài đặt bị lỗi.

JSON API bị tắt theo mặc định

Mặc định được xuất xưởng là formats: [html] và không có gì khác, vì vậy API mà mọi script đều cần sẽ bị đóng cho đến khi bạn mở nó.

curl -s -o /dev/null -w '%{http_code}\n' \
  'http://127.0.0.1:8888/search?q=test&format=json'

Điều đó in ra 403, vì route tìm kiếm gọi flask.abort(403) khi định dạng yêu cầu không được liệt kê trong search.formats. Hãy thêm định dạng đó và khởi động lại dịch vụ:

search:
  formats:
    - html
    - json

File cấu hình searx cũ không có khóa formats, vì vậy đầu ra JSON của nó mặc định luôn sẵn sàng. Mọi script và đoạn mã từ thời đó đều giả định như vậy, và lỗi thường gặp là mã 403 mà không có giải thích. Nếu bạn đang kết nối một instance vào các công cụ tự động, cung cấp cho agent một endpoint SearXNG để tìm kiếm bắt đầu bằng thiết lập này.

Tại sao các hướng dẫn copy-paste về Searx lại thất bại

Mỗi dòng dưới đây xuất hiện trong các hướng dẫn vẫn còn xếp hạng cao, nhưng mỗi dòng đều gây hiểu lầm hoặc thất bại trên một bản cài đặt hiện tại.

  • sudo apt install searx trên Ubuntu 24.04 dừng lại ở E: Unable to locate package searx, vì gói phần mềm này lần cuối được phát hành vào bản 22.04.
  • pip install searx chạy thành công và cài đặt bản 0.17.0 từ tháng 7 năm 2020. Không có cảnh báo nào cho bạn biết rằng phiên bản này đã cũ hơn bản fork hiện tại.
  • git clone https://github.com/asciimoo/searx vẫn hoạt động, vì GitHub chuyển hướng tên chủ sở hữu cũ và nó cung cấp cho bạn cây thư mục từ tháng 4 năm 2023.
  • Các bước chỉnh sửa searx/settings.yml trong cây mã nguồn không thay đổi gì trên SearXNG, vì nó đọc /etc/searxng/settings.yml.
  • Các bước cài đặt filtron hoặc morty là đang xây dựng lại các thành phần mà SearXNG đã tích hợp sẵn.
  • Một URL redis: cho bộ giới hạn (limiter) đã bị đổi tên so với khóa valkey: hiện tại.

Các hướng dẫn về SearXNG cũng bị lỗi thời, và URL clone là cách nhanh nhất để xác định độ cũ của hướng dẫn. Các file compose trước đây nằm trong một kho lưu trữ searxng-docker riêng biệt. Kho lưu trữ đó đã được lưu trữ (archive) vào tháng 3 năm 2026 và các file của nó đã được chuyển vào container/ trong kho lưu trữ chính. Hướng dẫn khởi động nhanh container hiện tại từ tài liệu là:

mkdir -p ./searxng/core-config/
cd ./searxng/
curl -fsSL \
    -O https://raw.githubusercontent.com/searxng/searxng/master/container/docker-compose.yml \
    -O https://raw.githubusercontent.com/searxng/searxng/master/container/.env.example
cp -i .env.example .env
nano .env
docker compose up -d

Chỉnh sửa .env trước khi chạy lệnh cuối cùng. Image này ánh xạ các biến môi trường vào các khóa cài đặt, vì vậy SEARXNG_SECRET trở thành server.secret_keySEARXNG_BASE_URL trở thành server.base_url. Cài đặt bằng script trên host là một lộ trình khác nhưng cho kết quả tương tự:

git clone https://github.com/searxng/searxng.git searxng
cd searxng
sudo -H ./utils/searxng.sh install all

Lệnh đó tạo người dùng searxng, môi trường ảo (virtual environment) tại /usr/local/searxng và dịch vụ uWSGI, đây là thiết lập tham chiếu trong tài liệu của SearXNG. Hướng dẫn chi tiết hơn về lộ trình đó nằm tại cài đặt SearXNG trên VPS của riêng bạn.

Instance công cộng hay instance của riêng bạn

Một instance công cộng là máy chủ của người khác thực hiện TLS (transport layer security) termination cho kết nối của bạn, vì vậy phần mềm tại đó đọc truy vấn của bạn dưới dạng văn bản thuần (plain text). Tài liệu của SearXNG đặt ra vấn đề tin cậy một cách rõ ràng: bạn phải tin tưởng quản trị viên, và bạn không thể biết liệu các yêu cầu có bị ghi log, tổng hợp hay chuyển cho bên thứ ba hay không. Danh sách hiển thị là ngắn gọn và đầy đủ. Stack của người vận hành có thể thấy nội dung truy vấn, thời gian, địa chỉ IP nơi yêu cầu gửi đến, user agent của trình duyệt và cookie tùy chọn lưu trữ các thiết lập của bạn. Người vận hành cũng kiểm soát code, vì vậy bất kỳ bản vá nào họ áp dụng đều chạy trên mọi tìm kiếm bạn thực hiện tại đó.

Một thiết lập mặc định khiến việc ghi log vô tình trở nên dễ dàng hơn. Searx gửi các tìm kiếm dưới dạng POST. SearXNG xuất xưởng method: "GET", với lưu ý rằng POST giữ các truy vấn tìm kiếm khỏi lịch sử trình duyệt nhưng gây ra các vấn đề về khả năng sử dụng. Với GET, truy vấn nằm trong dòng yêu cầu (request line), vì vậy nó mặc định nằm trong access log của reverse proxy và trong lịch sử trình duyệt. Đó là hành vi thông thường của web server. Bạn nên biết điều này trước khi chọn máy chủ của ai để thực hiện.

Việc tự chạy instance của riêng bạn là chuyển dịch sự tin tưởng thay vì loại bỏ nó. Bạn kiểm soát code và log, và nếu bạn không muốn công khai hostname hoặc chứng chỉ TLS cho một máy chủ chỉ dành cho một người dùng, truy cập nó qua v3 onion service sẽ giữ cho instance nằm ngoài DNS công cộng trong khi bạn vẫn có thể truy cập từ bất cứ đâu. Đổi lại, các engine phía upstream sẽ thấy một địa chỉ cho tất cả các tìm kiếm của bạn, và trên một instance đơn người dùng, mọi truy vấn đều truy ngược lại về phía bạn thay vì bị trộn lẫn vào đám đông. Một instance công cộng bận rộn mang lại cho bạn đám đông đó và lấy đi các log khỏi tầm kiểm soát của bạn. Hãy chọn đặc tính mà bạn quan tâm, và nếu bạn muốn danh sách rủi ro đầy đủ trước, liệu SearXNG có an toàn để sử dụng không sẽ giải quyết vấn đề đó.

Một lưu ý thực tế cho VPS. Các dải địa chỉ của trung tâm dữ liệu (datacentre) bị gắn cờ nhanh hơn so với kết nối tại nhà, vì vậy một instance mới sẽ gặp CAPTCHA trên một số engine ngay trong những lần tìm kiếm đầu tiên. Đó là hành vi tạm ngưng như đã nêu ở trên đang thực hiện đúng chức năng của nó, không phải là cấu hình sai.

Nếu bạn đang chạy một instance Searx

Không có gì bị hỏng ngay trong ngày bạn đọc bài này. Máy chủ vẫn hoạt động cho đến khi thay đổi từ upstream làm hỏng một engine khác, và sau đó nó sẽ không hoạt động nữa. Hãy lên kế hoạch chuyển đổi và đừng copy file cấu hình cũ sang. Hãy bắt đầu từ template của SearXNG, sau đó chỉ thêm lại những gì bạn đã chủ động thay đổi: tên instance, safe_search, các engine bạn đã bật hoặc tắt theo tên, và các thiết lập mặc định của giao diện. Tên engine và các tùy chọn đã thay đổi trong bản fork, vì vậy hãy kiểm tra từng cái với tài liệu hiện tại thay vì giả định rằng key đó vẫn tồn tại. Các quy tắc Filtron và URL morty không có tương đương, vì các tác vụ đó đã được tích hợp vào bên trong ứng dụng.

Hãy chạy instance mới trên một cổng khác trong khi instance cũ vẫn đang hoạt động. Nó hoạt động bình thường khi trang chủ trả về mã 200, một lượt tìm kiếm trả về kết quả từ nhiều hơn một engine, và /stats/errors trống hoặc chỉ liệt kê các lỗi mà bạn hiểu rõ. Sau đó, hãy chuyển hướng reverse proxy sang và dừng service cũ lại.

FAQ

Searx đã chết vào năm 2026 chưa?

Repository không bị lưu trữ (archive), nên bạn vẫn có thể clone nó, nhưng dự án không còn được bảo trì. Commit code cuối cùng được thực hiện vào tháng 4 năm 2023, và README có ghi dòng "Searx is no longer maintained." Hãy tự kiểm tra bằng curl -s https://api.github.com/repos/searx/searx | jq -r '.pushed_at' rồi đọc các thông báo commit gần nhất, vì ngày push đơn thuần có thể chỉ là do chỉnh sửa tài liệu. Đối với một công cụ metasearch, việc không được bảo trì đồng nghĩa với kết quả tìm kiếm sẽ tự động tệ đi, vì mỗi module engine đều phụ thuộc vào một trang web upstream liên tục thay đổi.

Tôi có thể cài đặt Searx bằng apt hoặc pip không?

Không thể trên các hệ thống hiện tại, và cũng không hữu ích ở nơi bạn có thể cài. Ubuntu đóng gói searx lần cuối trong bản 22.04 ở phiên bản 1.0.0, nên sudo apt install searx trên 24.04 sẽ trả về E: Unable to locate package searx. Debian đã cung cấp bản 1.1.0 trong Debian 12 và loại bỏ nó khỏi bản testing từ tháng 10 năm 2023, nên Debian 13 không có package này. PyPI vẫn cung cấp bản 0.17.0 từ tháng 7 năm 2020, vốn còn cũ hơn cả bản fork. Hãy cài đặt SearXNG thay thế.

File settings.yml cũ của searx có hoạt động trên SearXNG không?

Không. Hãy copy các giá trị, đừng copy cả file. SearXNG đọc /etc/searxng/settings.yml và yêu cầu use_default_settings: true ở phần đầu, vì vậy file của bạn đóng vai trò là lớp phủ (overlay) lên các thiết lập mặc định. Một file searx cũ là cấu hình đầy đủ với các tên khóa khác nhau, nó không có limiter, không có khối valkey và không có danh sách formats. Hãy bắt đầu từ template tại utils/templates/etc/searxng/settings.yml và thêm lại các thay đổi của bạn từng cái một.

Tại sao instance SearXNG của tôi trả về ít kết quả hơn instance công cộng?

Một số engine bị tạm ngưng. Khi một engine phản hồi bằng CAPTCHA hoặc trang giới hạn tốc độ (rate limit), SearXNG sẽ ngừng truy vấn nó trong một khoảng thời gian cố định, từ 180 giây cho từ chối thông thường đến 1,296,000 giây cho CAPTCHA của Cloudflare. Trang kết quả báo cáo điều này trong mục "Messages from the search engines", và /stats/errors liệt kê các lỗi kèm lý do. Địa chỉ IP từ trung tâm dữ liệu (datacentre) bị gắn cờ nhanh hơn kết nối gia đình, nên một VPS mới sẽ gặp tình trạng này sớm.

Tôi nên dùng instance SearXNG công cộng hay tự chạy instance riêng?

Hãy tự chạy nếu bạn muốn kiểm soát code và log, và chấp nhận rằng các engine upstream sẽ thấy một địa chỉ IP duy nhất cho tất cả các tìm kiếm của bạn. Hãy dùng instance công cộng nếu việc trộn lẫn truy vấn của bạn với người khác quan trọng hơn việc biết những gì được ghi lại. Trên một instance công cộng, người vận hành có thể thấy nội dung truy vấn, thời gian, địa chỉ IP và user agent của bạn, đồng thời có thể thay đổi code bất cứ lúc nào họ muốn. Chính sách ghi log được công bố không thể xác minh từ bên ngoài.