Αυτόνομη ανάπτυξη SearXNG

Ανάπτυξη και Διαμόρφωση SearXNG

Το CherryStudio υποστηρίζει διαδικτυακή αναζήτηση μέσω του SearXNG, ενός ανοιχτού λογισμικού που μπορεί να αναπτυχθεί τοπικά ή σε διακομιστή. Αυτός ο τρόπος διαφέρει από άλλες διαμορφώσεις που βασίζονται σε παρόχους API.

Σύνδεσμος έργου SearXNG: SearXNG

Πλεονεκτήματα SearXNG

  • Ανοιχτό λογισμικό και δωρεάν, χωρίς απαίτηση API

  • Σχετικά υψηλότερη προστασία απορρήτου

  • Υψηλός βαθμός προσαρμογής

Τοπική Ανάπτυξη

1. Άμεση Ανάπτυξη με Docker

Εφόσον το SearXNG δεν απαιτεί περίπλοκες ρυθμίσεις περιβάλλοντος, μπορείτε να χρησιμοποιήσετε απευθείας το Docker αντί για docker compose. Αυτός είναι ο ταχύτερος τρόπος.

1. Κατέβασμα, εγκατάσταση και ρύθμιση docker

Επιλέξτε διαδρομή αποθήκευσης εικόνων μετά την εγκατάσταση:

2. Αναζήτηση και λήψη εικόνας SearXNG

Στο πλαίσιο αναζήτησης πληκτρολογήστε searxng:

Λήψη εικόνας:

3. Εκτέλεση εικόνας

Μετά την επιτυχή λήψη, μεταβείτε στη σελίδα images:

Επιλέξτε την εικόνα και κάντε κλικ στην επιλογή εκτέλεσης:

Ανοίξτε τις ρυθμίσεις για διαμόρφωση:

Για θύρα 8085:

Μετά την επιτυχή εκτέλεση, κάντε κλικ στον σύνδεσμο για το περιβάλλον εργασίας SearXNG:

Αυτή η σελίδα δείχνει επιτυχή ανάπτυξη:

Ανάπτυξη σε Διακομιστή

Ανάπτυξη SearXNG

Παρόμοια με τοπική ανάπτυξη, χρησιμοποιούμε Docker. Αν υποθέσουμε ότι έχετε εγκαταστήσει το Docker CE σύμφωνα με την επίσημη τεκμηρίωση, εδώ είναι εντολές για Debian:

sudo apt update
sudo apt install git -y

# Λήψη επίσημου αποθετηρίου
cd /opt
git clone https://github.com/searxng/searxng-docker.git
cd /opt/searxng-docker

# Για μικρό εύρος ζώνης διακομιστή
export IMAGE_PROXY=true

# Διαμόρφωση αρχείου ρυθμίσεων
cat <<EOF > /opt/searxng-docker/searxng/settings.yml
# see https://docs.searxng.org/admin/settings/settings.html#settings-use-default-settings
use_default_settings: true
server:
  # base_url is defined in the SEARXNG_BASE_URL environment variable, see .env and docker-compose.yml
  secret_key: $(openssl rand -hex 32)
  limiter: false  # can be disabled for a private instance
  image_proxy: $IMAGE_PROXY
ui:
  static_use_hash: true
redis:
  url: redis://redis:6379/0
search:
  formats:
    - html
    - json
EOF

Για αλλαγή θύρας ή χρήση υπάρχοντος Nginx, τροποποιήστε το docker-compose.yaml:

version: "3.7"

services:
  # ... [παραληφμένο για σαφήνεια] ...

  searxng:
    container_name: searxng
    image: docker.io/searxng/searxng:latest
    restart: unless-stopped
    networks:
      - searxng
    ports:
      - "127.0.0.1:8080:8080"  # Αλλαγή θύρας εδώ
    volumes:
      - ./searxng:/etc/searxng:rw
    environment:
      - SEARXNG_BASE_URL=https://${SEARXNG_HOSTNAME:-localhost}/
      - UWSGI_WORKERS=${SEARXNG_UWSGI_WORKERS:-4}
      - UWSGI_THREADS=${SEARXNG_UWSGI_THREADS:-4}
    cap_drop:
      - ALL
    cap_add:
      - CHOWN
      - SETGID
      - SETUID
    logging:
      driver: "json-file"
      options:
        max-size: "1m"
        max-file: "1"

# ... [παραληφμένο] ...

Εκτελέστε docker compose up -d και docker compose logs -f searxng για παρακολούθηση αρχείων καταγραφής.

Ανάπτυξη Αντίστροφου Διακομιστή και Βασικής Πιστοποίησης HTTP

Χρησιμοποιήστε Nginx για αντίστροφο διακομιστή και βασική πιστοποίηση. Για πίνακες όπως BT/1Panel, δείτε τα αντίστοιχα έγγραφα.

Δείγμα ρυθμίσεων Nginx:

server
{
    listen 443 ssl;
    server_name search.example.com;
    
    ssl_certificate    /path/to/cert/fullchain.pem;
    ssl_certificate_key    /path/to/cert/privkey.pem;
    
    location / {
        auth_basic "Εισαγάγετε τα διαπιστευτήριά σας";
        auth_basic_user_file /etc/nginx/conf.d/search.htpasswd;

        proxy_http_version 1.1;
        proxy_set_header Connection "";
        # ... [άλλες ρυθμίσεις] ...
        proxy_pass http://127.0.0.1:8000;
    }
}

Δημιουργία αρχείου κωδικών:

echo "όνομα_χρήστη:$(openssl passwd -5 'κωδικός')" > /etc/nginx/conf.d/search.htpasswd

Επαναλάβετε την εκκίνηση του Nginx.

Ρυθμίσεις Cherry Studio

Μετά την επιτυχή ανάπτυξη SearXNG, ρυθμίστε το CherryStudio.

Στη σελίδα ρυθμίσεων δικτυακής αναζήτησης, επιλέξτε Searxng:

Προσθέστε τη διεύθυνση τοπικού σας στιγμιότυπου.

Διόρθωση Διαμόρφωσης

Για αποτυχία επικύρωσης εξαιτίας JSON:

Επεξεργαστείτε το settings.yml και προσθέστε JSON ως μορφή:

Μετά την επανεκκίνηση:

Χρησιμοποιήστε http://localhost:θύρα ή http://host.docker.internal:θύρα.

Βασική Πιστοποίηση

Για διακομιστές με ενεργοποιημένη βασική πιστοποίηση, προσθέστε τα διαπιστευτήρια:

Άλλες Ρυθμίσεις

Για προσαρμογές μηχανών αναζήτησης, επεξεργαστείτε το αρχείο ρυθμίσεων:

Συχνά Ζητήματα

Ελλιπής Μορφή Αποτελεσμάτων

Προσθέστε JSON στις επιτρεπόμενες μορφές:

Προβλήματα Μηχανών Αναζήτησης

Για την Κίνα, χρησιμοποιήστε baidu ως μηχανή αναζήτησης:

use_default_settings:
  engines:
    keep_only:
      - baidu
engines:
  - name: baidu
    engine: baidu 
    categories: 
      - web
      - general
    disabled: false

Όριο Ταχύτητας

Απενεργοποιήστε τον περιορισμό ρυθμού:

最后更新于

这有帮助吗?