# 503 Service Unavailable saat scraping: arti dan cara mengatasinya

> 503 Service Unavailable melalui proxy: overload target, pemeliharaan, halaman tantangan, atau target terlalu sempit. Cara mengetahui dan memperbaikinya.

- URL: https://crawlrelay.com/id/docs/errors/503-service-unavailable/
- Terakhir diperbarui: 2026-10-13
- Publisher: CrawlRelay (https://crawlrelay.com)

Kode status HTTP (5xx, kesalahan server): pesan tepat di tiap alat, penyebab yang mungkin secara urut, dan perbaikan yang berhasil.

**Jawaban cepat — Apa arti 503 Service Unavailable dengan proxy?**

**503 Service Unavailable** berarti server tidak bisa menangani permintaan saat ini karena overload, pemeliharaan, atau aturan protektif. Melalui proxy residential CrawlRelay, baca header `Retry-After` dan isi respons: 503 karena pemeliharaan atau overload akan hilang dengan waktu, sedangkan halaman tantangan berarti situs memfilter trafik otomatis dan Anda harus memperlambat.

## 503 Service Unavailable sekilas

| Atribut | Nilai |
| --- | --- |
| Kesalahan | 503 Service Unavailable |
| Tipe | Kode status HTTP (5xx, kesalahan server) |
| Dikirim oleh | Situs target, CDN-nya, atau proxy saat tidak ada exit yang tersedia |
| Didefinisikan dalam | RFC 9110, section 15.6.4 (Retry-After: section 10.2.3) |
| Mencoba lagi? | Ya, setelah Retry-After atau jeda |
| Periksa pertama | Periksa header Retry-After dan apakah isi adalah halaman tantangan CDN |

## Apa arti 503 Service Unavailable?

RFC 9110 mendefinisikan 503 sebagai kondisi sementara. Server aktif namun tidak mau atau tidak mampu melayani permintaan sekarang, dan bisa memberitahu kapan kembali lewat `Retry-After`.

Dalam praktik, tiga situasi berbeda berbagi kode ini: situs yang benar-benar overload atau dalam pemeliharaan, CDN yang menunjukkan halaman tantangan ke trafik yang dianggap otomatis, dan gateway proxy tanpa exit yang cocok untuk target sangat sempit. Isi dan header membedakan mereka.

## Seperti apa a 503 dalam Python, curl, Node.js, dan browser?

Kegagalan yang sama dicetak berbeda di setiap alat. Ini adalah pesan yang perlu dicari di log Anda:

- **Python requests / httpx:** `status_code == 503`, kadang dengan `Retry-After`
- **Scrapy:** mencoba ulang secara default (503 ada di `RETRY_HTTP_CODES`)
- **curl:** `HTTP/2 503`, sering dengan header `server:` yang menyebut CDN
- **Browser:** halaman pemeliharaan atau halaman pemeriksaan interstisial

## Apa penyebab a 503?

Kemungkinan besar pertama:

- **Overload atau pemeliharaan** di sisi target, sering dengan `Retry-After`.
- **Halaman tantangan** yang disajikan CDN untuk klien yang ingin diperiksa, dengan status 503 atau 403.
- **Beban Anda sendiri**, saat crawler Anda menjadi bagian besar trafik situs.
- **Target terlalu sempit**, seperti kota kecil, saat tidak ada exit yang cocok saat itu.
- **Gangguan hulu** di CDN atau wilayah cloud yang dipakai situs.

## Bagaimana cara mendiagnosis a 503 langkah demi langkah?

1. Baca `Retry-After` dan header `server`, lalu lihat judul HTML di isi.
2. Buka halaman di browser dari negara yang sama untuk melihat tampilan pengguna.
3. Jeda crawler selama beberapa menit dan uji satu permintaan: jika berhasil, beban Anda penyebabnya.
4. Perluas target ke tingkat negara dan bandingkan.

*Uji URL yang gagal dengan curl (port HTTP, verbose)*

```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
```

## Bagaimana cara memperbaiki a 503?

- **Tunggu dan coba lagi** dengan jeda `Retry-After` atau backoff eksponensial.
- **Kurangi beban** pada host itu: permintaan paralel lebih sedikit, jeda lebih lama, caching.
- **Anggap halaman tantangan sebagai sinyal berhenti** untuk kecepatan itu. Jangan gunakan alat pemecah CAPTCHA atau penyamaran browser untuk mengatasinya; kurangi tingkatnya dan hubungi situs jika perlu akses.
- **Perluas target** bila 503 muncul dengan filter kota yang sempit.

*Python: coba ulang dengan Retry-After, backoff eksponensial, dan jitter*

```python
import random
import time

import requests

PROXY = "http://USERNAME:PASSWORD@gw.crawlrelay.com:7777"
PROXIES = {"http": PROXY, "https": PROXY}
RETRY_STATUSES = {429, 502, 503, 504}


def fetch(url, attempts=5, timeout=(10, 30)):
    for attempt in range(attempts):
        try:
            r = requests.get(url, proxies=PROXIES, timeout=timeout)
        except (requests.exceptions.ConnectionError, requests.exceptions.Timeout):
            r = None  # dropped exit, reset or timeout: a new connection gets a new exit
        if r is not None and r.status_code not in RETRY_STATUSES:
            return r
        retry_after = r.headers.get("Retry-After", "") if r is not None else ""
        if retry_after.isdigit():
            wait = int(retry_after)
        else:
            wait = min(60, 2 ** attempt) + random.uniform(0, 1)
        time.sleep(wait)
    raise RuntimeError("giving up on %s after %d attempts" % (url, attempts))
```

## Haruskah saya mencoba lagi setelah a 503?

Coba ulang 503 dengan sabar. Gunakan `Retry-After` jika ada; jika tidak, lakukan backoff eksponensial dari beberapa detik sampai satu atau dua menit. Jika host mengembalikan 503 ke sebagian besar permintaan lebih dari beberapa menit, jeda sepenuhnya dan coba lagi nanti. Catat halaman tantangan berbeda dari gangguan nyata dalam log Anda.

## Bagaimana 503 Service Unavailable berlaku untuk CrawlRelay?

CrawlRelay mengirim permintaan Anda melalui IP residential yang dipilih sesuai target Anda. Target tingkat negara memakai exit terbanyak; target kota lebih sempit. Jika 503 hanya muncul dengan filter kota, coba permintaan yang sama hanya dengan negara sebelum mengubah apapun.

Gateway: `gw.crawlrelay.com`, port 7777 (HTTP, HTTPS melalui CONNECT) dan port 7778 (SOCKS5). Format username: `USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}`. Terkait: [429 Too Many Requests](https://crawlrelay.com/id/docs/errors/429-too-many-requests/) · [502 Bad Gateway](https://crawlrelay.com/id/docs/errors/502-bad-gateway/) · [504 Gateway Timeout](https://crawlrelay.com/id/docs/errors/504-gateway-timeout/).

## 503 Service Unavailable: pertanyaan yang sering ditanyakan pengembang

### Mengapa saya hanya mendapat 503 lewat proxy tapi tidak di rumah?

Situs memperlakukan trafik proxy Anda berbeda, sering menampilkan halaman tantangan, atau target Anda terlalu sempit sehingga exit jarang. Bandingkan isi respons di kedua kasus. Halaman tantangan berarti kurangi kecepatan; pesan proxy singkat dengan target sempit berarti perlu perluas filter lokasi.

### Apakah 503 sama dengan diblokir?

Tidak. 503 asli bersifat sementara dan akan hilang dengan waktu. Halaman tantangan dengan 503 adalah filter, biasanya berarti pola atau kecepatan Anda terlihat otomatis. Kurangi koneksi paralel dan tambahkan jeda. Jika situs sama sekali tidak mengizinkan akses otomatis, hormati itu dan cari API atau data berlisensi.

### Berapa kali saya harus coba ulang 503?

Tiga sampai lima kali dengan backoff eksponensial adalah batas wajar untuk satu URL. Setelah itu, jeda seluruh host daripada coba ulang URL satu per satu, karena situs bermasalah tidak akan pulih lebih cepat dengan coba ulang. Catat host dan waktu agar bisa dilanjutkan nanti.

## Kesalahan proxy lain dalam referensi ini

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

**Proxy residensial dengan dokumentasi yang membahas kasus kegagalan** Proxy residensial CrawlRelay dari US$0,50/GB, lalu lintas yang tidak pernah kedaluwarsa. [Lihat harga](https://crawlrelay.com/id/pricing/) · [Mulai cepat](https://crawlrelay.com/id/docs/)

---

CrawlRelay: CrawlRelay adalah layanan proxy residensial dan proxy seluler 4G/5G yang berfokus pada pengembang untuk scraper dan pipeline data AI: trafik pay-as-you-go tanpa kedaluwarsa mulai dari US$0,50/GB, dibayar dengan crypto, tanpa perlu unggah ID. Tanpa KYC — tanpa ID, tanpa selfie, tanpa dokumen. Bayar dengan crypto.
