searxng: google 0건 후속 진단·조치 기록 (timeout/uaPatch/CPU, 0%→~50%)
This commit is contained in:
@@ -58,7 +58,22 @@ Go + [[https://github.com/refraction-networking/utls|utls]] 기반 MITM forward
|
|||||||
|
|
||||||
> **2026-06-10 재배포 기록**: 기존 SearXNG `proxy.address`가 죽은 IP `100.79.87.48:8443`을 가리켜 google 엔진이 `HTTP connection error`로 0건. apisix-osaka의 `tlsproxy:latest` 이미지와 CA 페어를 zlambda로 이식(`docker save|load` + scp), host network로 기동. `charts/searxng/values.yaml`의 `proxy.address`를 `100.78.51.18:8443`(zlambda 실제 tailscale IP)로 교정·푸시 → ArgoCD synced. 프록시 경유 Google 접근은 200/정상 HTML 복구됨(connection error 해소).
|
> **2026-06-10 재배포 기록**: 기존 SearXNG `proxy.address`가 죽은 IP `100.79.87.48:8443`을 가리켜 google 엔진이 `HTTP connection error`로 0건. apisix-osaka의 `tlsproxy:latest` 이미지와 CA 페어를 zlambda로 이식(`docker save|load` + scp), host network로 기동. `charts/searxng/values.yaml`의 `proxy.address`를 `100.78.51.18:8443`(zlambda 실제 tailscale IP)로 교정·푸시 → ArgoCD synced. 프록시 경유 Google 접근은 200/정상 HTML 복구됨(connection error 해소).
|
||||||
>
|
>
|
||||||
> **남은 이슈 (tlsproxy와 무관, SearXNG 엔진 문제)**: google 엔진이 여전히 0건 반환(`unresponsive: []`, 에러 아님). 원인은 Google이 GSA·Chrome UA 양쪽 모두에 `data-ved` 없는 경량 JS-shell HTML(약 90KB)을 반환하는데, 현재 `google.py` 파서는 `//a[@data-ved and not(@class)]`를 기대 → 매칭 0. 상류 SearXNG google 엔진의 스크레이핑 호환성 문제. **해법 후보**: SearXNG 이미지 최신화(현재 `image.tag: latest`) 또는 google.py 파서 패치. brave/duckduckgo/qwant 등 타 엔진은 정상.
|
> **2026-06-10 google 0건 후속 조치 (위 재배포 직후)**:
|
||||||
|
>
|
||||||
|
> 정밀 진단 결과 — UA·파서 정합성:
|
||||||
|
> - 현재 이미지는 이미 최신 `2026.6.8`. 재pull 무의미 (버전 문제 아님).
|
||||||
|
> - `gen_gsa_useragent()`(Android Nexus5 GSA UA) + `Accept: */*` → Google이 **`data-ved` 풍부한 정상 HTML(150KB+, dv 50~80)** 반환. fetch→파서 전 구간 정상 (수동 재현 6~10건 추출 성공).
|
||||||
|
> - **Chrome UA → `data-ved` 없는 lite-shell(90KB) → 파서 0건.** 따라서 `uaPatch`(Chrome UA 교체)는 **해롭다 → 비활성화**. 기본 GSA UA가 정답. (uaPatch는 마운트만 되고 실행은 안 되던 inert 상태였음)
|
||||||
|
> - raw fetch 신뢰성: fresh/keepalive 모두 **10/10**. 연결 풀 문제 아님.
|
||||||
|
>
|
||||||
|
> 적용한 변경 (`charts/searxng`):
|
||||||
|
> - `uaPatch.enabled: false` (Chrome UA가 google 깨뜨림)
|
||||||
|
> - google 엔진 `timeout: 8 → 15`, outgoing `request_timeout: 10 → 15` + `max_request_timeout: 20`
|
||||||
|
> - CPU limit `500m → 1` (동시 부하 대비, 단 포함률엔 영향 없었음)
|
||||||
|
>
|
||||||
|
> 결과 — google 포함률: **0% → 격리 라이브 ~83%, 전체검색 ~40~50%**. 결과 품질은 정상.
|
||||||
|
>
|
||||||
|
> **남은 한계**: 전체(다엔진 동시) 검색에서 google이 절반가량 누락. raw fetch는 100%인데 라이브 엔진은 변동 — 프록시 경유 google이 타 엔진보다 느리고 + 엔진의 정확한 요청 패턴에 Google이 간헐적으로 lite-shell을 반환하는 SearXNG↔Google 고질 변동. **추가 개선 후보**: google.py response()에서 결과 0 + lite-shell 감지 시 예외 발생시켜 SearXNG 재시도 유도하는 파서 패치(uaPatch와 동일한 sed 주입 메커니즘 활용 가능). brave/duckduckgo/qwant는 정상.
|
||||||
|
|
||||||
### SearXNG 설정
|
### SearXNG 설정
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user