# Proxy üzerinden SSL WRONG_VERSION_NUMBER: çözüm

> [SSL: WRONG_VERSION_NUMBER] proxy üzerinden genellikle düz bir HTTP proxy portuna https:// proxy URL'si yazılmasıdır. Python ve Node için tek satır çözüm.

- URL: https://crawlrelay.com/tr/docs/errors/ssl-wrong-version-number/
- Son güncelleme: 2026-10-13
- Publisher: CrawlRelay (https://crawlrelay.com)

İstemcide TLS hatası: her araçta tam hata mesajı, olası nedenler sırasıyla ve işe yarayan çözüm.

**Hızlı cevap — Konut proxy ile SSL: WRONG_VERSION_NUMBER ne anlama gelir?**

**[SSL: WRONG_VERSION_NUMBER]** proxy üzerinden neredeyse her zaman istemcinizin TLS el sıkışmasını metin olarak cevap veren bir şeye başlatması anlamına gelir. Yaygın sebep, düz HTTP proxy portuna işaret eden `https://` proxy URL'sidir. CrawlRelay ile, hem HTTP hem HTTPS hedefleri için geçit adresinin önüne `http://` yazın; sitenin kendi HTTPS'i tünelden çalışmaya devam eder.

## SSL: WRONG_VERSION_NUMBER hızlı bakış

| Özellik | Değer |
| --- | --- |
| Hata | SSL: WRONG_VERSION_NUMBER |
| Tür | İstemcide TLS hatası |
| Gönderen | Karşı taraf TLS konuşmadığında TLS kitaplığınızda oluşur |
| Tanımlandığı yer | TLS 1.3: RFC 8446; HTTP proxy CONNECT: RFC 9110, section 9.3.6 |
| Tekrar denemek ister misiniz? | Hayır. Bu bir yapılandırma hatasıdır |
| İlk kontrol | Proxy URL'nizin önündeki scheme'i kontrol edin |

## SSL: WRONG_VERSION_NUMBER ne anlama gelir?

TLS el sıkışması bir protokol kaydı ile başlar. Dönen baytlar HTTP cevabıysa, TLS kitaplığı saçma bir sürüm numarası okur ve durur. Python `WRONG_VERSION_NUMBER` hatası verir; tam ifade OpenSSL ve istemci sürümüne göre değişir.

Proxy URL scheme'i, istemcinizin proxy ile nasıl konuştuğunu belirler. `http://` proxy ile düz HTTP konuşma ve ardından `CONNECT` tünel ile TLS'yi, `https://` ise proxy ile TLS'yi belirtir ve sadece proxy portu TLS bekliyorsa işler.

## Python, curl, Node.js ve tarayıcılarda SSL: WRONG_VERSION_NUMBER nasıl görünür?

Aynı başarısızlık her araçta farklı şekilde görünür. Loglarınızda aramanız gereken mesajlar şunlardır:

- **Python requests / urllib3 2.x:** `SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number'))`, `ProxyError` içinde sarılıdır
- **httpx:** `httpx.ConnectError: [SSL: WRONG_VERSION_NUMBER] wrong version number`
- **curl:** `curl: (35) ... wrong version number`, düz proxy için `-x https://` yazdığınızda
- **Node.js:** Hata mesajında `EPROTO ... wrong version number`

## SSL: WRONG_VERSION_NUMBER neden olur?

Öncelikle en olası sebep:

- Düz HTTP konuşan bir portta proxy adresi önünde **`https://` kullanımı. Bu en yaygın durum.
- Proxy portu TLS bekleyen bir sağlayıcıdan alınan **kopyalanan ayarlar.**
- 80 portlu URL'de `https://` veya TLS bekleyen site portunda `http://`, herhangi bir proxy dışında.
- Kodunuzun devraldığı **`HTTPS_PROXY=https://...` gibi bir çevre değişkeni.**

## SSL: WRONG_VERSION_NUMBER nasıl adım adım teşhis edilir?

1. Kodunuzun kullandığı proxy URL'sini yazdırıp scheme'i kontrol edin.
2. Çevrede `HTTPS_PROXY` ve `ALL_PROXY`'i kontrol edin.
3. Aşağıdaki curl testini `-x http://` ile çalıştırıp doğrulayın.
4. Curl çalışıyor ama kodunuz etmiyorsa, kod veya ortamınız hala `https://` kullanıyor.

*Başarısız URL'yi curl ile test edin (HTTP portu, detaylı çıktı)*

```bash
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:PASSWORD@gw.crawlrelay.com:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL
```

## SSL: WRONG_VERSION_NUMBER nasıl düzeltilir?

- Her anahtar için proxy URL'nde **`http://` kullanın:** `{"http": "http://...", "https": "http://..."}`.
- **TLS doğrulamasını açık bırakın.** Çözüm scheme, `verify=False` değil.
- **Çevre değişkenini düzeltin,** tek bir betikte geçersiz kılmayın.

## SSL: WRONG_VERSION_NUMBER sonrası tekrar denenmeli mi?

Bu hatayı asla tekrar denemeyin: her deneme aynı şekilde başarısız olur. Tek karakterlik bir yapılandırma düzeltmesidir.

## SSL: WRONG_VERSION_NUMBER CrawlRelay için nasıl geçerli?

CrawlRelay'in HTTP portu, HTTPS sitelerini `CONNECT` tünelleri ile taşıyan basit bir HTTP proxy portudur. TLS, tünel içinde istemciniz ve site arasında uçtan uca çalışır, geçit asla `https://` proxy URL'si gerektirmez.

Gateway: `gw.crawlrelay.com`, port 7777 (HTTP, HTTPS CONNECT üzerinden) ve port 7778 (SOCKS5). Kullanıcı adı formatı: `USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}`. İlgili: [SSL certificate verify failed](https://crawlrelay.com/tr/docs/errors/ssl-certificate-verify-failed/) · [Proxyye bağlanılamıyor](https://crawlrelay.com/tr/docs/errors/cannot-connect-to-proxy/) · [Python rehberi](https://crawlrelay.com/tr/docs/python/).

## SSL: WRONG_VERSION_NUMBER: geliştiricilerin sorduğu sorular

### http:// proxy URL'si kullanırsam trafiğim şifrelenmemiş olur mu?

HTTPS siteler için değil. `http://` scheme sadece proxy ile kısa CONNECT alışverişini kapsar, bu proxy kimlik bilgilerinizi içerir. Bundan sonra istemciniz tünelde site ile doğrudan TLS yapar ve proxy sadece şifrelenmiş baytları iletir. Düz `http://` siteleri, proxy olsa da olmasa da şifrelenmemiştir.

### Bu sorun urllib3 güncellenince neden başladı?

urllib3 2.x HTTPS proxylerini destekler, bu yüzden `https://` proxy URL'sini aynen alır ve proxy ile TLS başlatır. Eski yapılandırmalar yanlış scheme ile bazen işe yarardı. Düz HTTP proxy portları için `http://` yazın, hata kalkar.

### Hata kalksın diye verify=False mu ayarlamalıyım?

Hayır. Sertifika kontrollerini kapatmak yanlış schemeyi düzeltmez ve her istekte saldırıya açık olmanızı sağlar. Proxy URL schemeyi düzeltin. Üretimde doğrulamayı açık tutun.

## Bu referanstaki diğer proxy hataları

- [401 Unauthorized vs 407](https://crawlrelay.com/tr/docs/errors/401-unauthorized/)
- [403 Forbidden](https://crawlrelay.com/tr/docs/errors/403-forbidden/)
- [407 Proxy Authentication Required](https://crawlrelay.com/tr/docs/errors/407-proxy-authentication-required/)
- [429 Too Many Requests](https://crawlrelay.com/tr/docs/errors/429-too-many-requests/)
- [502 Bad Gateway](https://crawlrelay.com/tr/docs/errors/502-bad-gateway/)
- [503 Service Unavailable](https://crawlrelay.com/tr/docs/errors/503-service-unavailable/)
- [504 Gateway Timeout](https://crawlrelay.com/tr/docs/errors/504-gateway-timeout/)
- [Cannot connect to proxy (ProxyError)](https://crawlrelay.com/tr/docs/errors/cannot-connect-to-proxy/)
- [Connection reset by peer (ECONNRESET)](https://crawlrelay.com/tr/docs/errors/connection-reset/)
- [ERR_PROXY_CONNECTION_FAILED](https://crawlrelay.com/tr/docs/errors/err-proxy-connection-failed/)
- [ERR_TUNNEL_CONNECTION_FAILED](https://crawlrelay.com/tr/docs/errors/err-tunnel-connection-failed/)
- [Read timed out (ReadTimeout)](https://crawlrelay.com/tr/docs/errors/read-timeout/)
- [SOCKS5 proxy errors](https://crawlrelay.com/tr/docs/errors/socks5-proxy-errors/)
- [SSL: CERTIFICATE_VERIFY_FAILED](https://crawlrelay.com/tr/docs/errors/ssl-certificate-verify-failed/)
- [SSL: WRONG_VERSION_NUMBER](https://crawlrelay.com/tr/docs/errors/ssl-wrong-version-number/)

**Başarısızlık durumları için dokümanlı konut proxy'ler** $0,50/GB sitesinden süresi hiç bitmeyen CrawlRelay konut proxy [Fiyatları gör](https://crawlrelay.com/tr/pricing/) · [Hızlı başlangıç](https://crawlrelay.com/tr/docs/)

---

CrawlRelay: CrawlRelay, kazıyıcılar ve AI veri hatları için geliştirici odaklı dönen konut proxy ve 4G/5G mobil proxy hizmetidir: süresiz, kullanılan kadar ödenen trafik $0,50/GB'dan itibaren, kripto ile ödenir, kimlik yüklemesi yoktur. KYC yok — kimlik, selfie veya belge istemez. Kripto ile ödeyin.
