Full mirror reverse proxy untuk v2.samehadaku.how dengan Cloudflare bypass dan anti-duplikat SEO.
- Cloudflare Bypass — Menggunakan
curl_cffidengan TLS fingerprint browser asli (bukan Puppeteer, tanpa headless browser) - Anti-Duplikat SEO — Semua URL di-rewrite ke domain mirror, canonical tag diset ke mirror, og:url difix, google-site-verification dihapus
- Full Mirror — HTML, CSS, JS, JSON, XML, sitemap, RSS feed — semua domain references di-replace
- Multi-domain Support — Otomatis detect dan replace v1, v2, v3...v9 variants
- Cache Layer — File-based cache untuk HTML (5 menit) dan assets (24 jam)
- Deploy Anywhere — Railway, Render, EasyPanel, VPS, Docker
# Edit docker-compose.yml — ganti MIRROR_DOMAIN dengan domain kamu
docker compose up -d# Install Python 3.12+
sudo apt update && sudo apt install -y python3 python3-pip python3-venv
# Setup
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Konfigurasi
cp .env.example .env
# Edit .env — WAJIB isi MIRROR_DOMAIN dengan domain kamu
# Jalankan
bash start.sh- Push repo ke GitHub
- Connect repo di Railway
- Set environment variables:
MIRROR_DOMAIN= domain Railway kamu (misal:xxx.up.railway.app)MIRROR_SCHEME=https
- Deploy otomatis dari
railway.json
- Push repo ke GitHub
- New Web Service → connect repo
- Set
MIRROR_DOMAINdi environment variables - Deploy otomatis dari
render.yaml
- Create new project di EasyPanel
- Add service → Docker → point ke repo
- Set environment
MIRROR_DOMAINke domain EasyPanel kamu - Config ada di
easypanel.json
| Variable | Default | Keterangan |
|---|---|---|
SOURCE_DOMAIN |
v2.samehadaku.how |
Domain sumber yang di-mirror |
MIRROR_DOMAIN |
localhost:8000 |
WAJIB DIISI — domain mirror kamu |
MIRROR_SCHEME |
https |
http atau https |
CACHE_ENABLED |
true |
Aktifkan cache |
CACHE_TTL_HTML |
300 |
Cache TTL HTML (detik) |
CACHE_TTL_ASSETS |
86400 |
Cache TTL assets (detik) |
WORKERS |
4 |
Jumlah worker uvicorn |
IMPERSONATE_BROWSER |
chrome |
Browser fingerprint (chrome, safari, edge) |
Masalah utama mirror website di Google Search Console adalah duplikat konten. Proxy ini menyelesaikannya dengan:
- Canonical Tag — Setiap halaman HTML mendapat
<link rel="canonical">yang mengarah ke domain mirror, bukan domain asli - OG:URL — Meta tag
og:urldi-rewrite ke domain mirror - Domain Replacement — SEMUA referensi domain asli (v1, v2, dll) di-replace ke domain mirror di HTML, CSS, JS, JSON, XML, sitemap
- Verification Removal — Tag
google-site-verificationdanmsvalidate.01dari situs asli dihapus (kamu pasang sendiri yang baru) - Sitemap Rewrite — Sitemap XML otomatis ter-rewrite dengan URL mirror
- Custom Robots.txt — Robots.txt khusus dengan sitemap pointing ke mirror
- X-Robots-Tag — Header
X-Robots-Tag: index, followditambahkan
| Path | Fungsi |
|---|---|
/_health |
Health check |
/_cache/clear |
Clear cache (POST) |
/robots.txt |
Custom robots.txt |
/* |
Mirror proxy |
- Python 3.12 + FastAPI + uvicorn
- curl_cffi — HTTP client dengan TLS fingerprinting (bypass Cloudflare tanpa browser)
- Regex-based HTML rewriting — Lebih reliable dari BeautifulSoup (tidak merusak HTML structure)