Bogahost Blog | Güncel Hosting, Sunucu ve Yazılım Rehberi
Müşteri Paneli
Blog

VDS'de Ngrok Tüneli ile Lokal Uygulamayı Canlı Test Etme: Geliştirme Ortamında Hızlı Doğrulama

VDS (Sanal Özel Sunucu) üzerinde çalışan web uygulamasını geliştirirken, genellikle localhost'ta test edersiniz. Ancak webhook, ödeme gateway API'si ya da üçüncü taraf servislerin callback göndermesi gerektiğinde, yerel ortamınıza dışarıdan erişim sağlamak zorlaşır. İşte bu noktada Ngrok tüneli devreye giriyor. Ngrok, lokal makinenizin portunu internet üzerinde yayınlayan, geçici bir ortak URL oluşturan aracıdır. VDS'de çalışan uygulamanızı gerçek üretim ortamına taşımadan önce, webhook'lar, API entegrasyonları ve harici servisleri güvenli bir şekilde test edebilirsiniz.

Ngrok Nedir ve Neden Gereklidir?

Ngrok, yerel bilgisayarınızdaki bir portu, internette herkese açık bir HTTPS URL'sine dönüştüren bir tünel servisidir. Normalde firewall ve NAT (Network Address Translation) arkasında kalan localhost'unuzu, dışarıdan erişilebilir hale getirir. Özellikle geliştirme aşamasında, Stripe, PayPal ya da Twilio gibi API sağlayıcıların webhook'larını test etmek, SMS gönderimi doğrulamak ya da webhook callback'leri simüle etmek için vazgeçilmezdir. VDS ortamında çalışan ana uygulamayla senkronize test etmek istediğinizde, lokal ortamınızı VDS'ye bağlamadan Ngrok üzerinden hızlı doğrulama yapabilirsiniz.

Ngrok Kurulumu ve Başlangıç Ayarlanması

Ngrok'u kurmak oldukça basittir. ngrok.com adresinden hesap oluşturup indirme linkini alırsınız. Linux veya macOS'ta komut satırına şu komutları yazarsınız:

Komut çalıştıktan sonra, Ngrok size https://xxxxxxxx.ngrok.io formatında bir URL verir. Bu URL, internetteki herhangi bir yerden lokal portunuza erişim sağlar. Webhook URL'si olarak, API test araçlarında ya da üçüncü taraf servislerin ayarlarında bu URL'yi kullanabilirsiniz.

Webhook Test Senaryosu: Stripe Entegrasyonu

E-ticaret uygulamanızda Stripe ödeme sistemini entegre etmek istiyorsunuz. Stripe, ödeme tamamlandığında webhook göndererek siparişi güncellemenizi ister. Canlı VDS ortamında yapılandırmadan önce, lokal ortamda webhook almayı doğrulamak gerekir.

Ngrok, terminalinde gelen isteklerin log'unu gösterir; hangi endpoint'e istek geldiğini, status kodunu, request/response body'sini görebilirsiniz. Bu sayede webhook uygulamanız çalışmadan önce sorunları erkenden tespit edersiniz.

Ngrok Konfigürasyonu ve İleri Ayarlar

Basit portlandırmanın ötesinde, Ngrok'u konfigüre ederek daha güvenli test ortamı oluşturabilirsiniz. ngrok.yml dosyası oluşturup çok sayıda tüneli aynı anda açabilirsiniz:

Özellikle, webhook test URL'sini protektif hale getirmek için http-auth seçeneğini kullanın. Böylece Stripe gibi servislere webhook URL'sini verirken, username/password ile korunmuş olur. Staging ortamı gibi çalışır.

VDS'de Ngrok Çalıştırma ve Entegrasyon

Bazen VDS üzerinde çalışan bir lokal test sunucusuna dışarıdan erişim sağlamak istersiniz. VDS'nin başka bir portunda geliştirme ortamınız, ana uygulamanız başka bir portta çalışıyorsa, Ngrok VDS'nin içinde de açılabilir. VDS üzerinde SSH açıp Ngrok kurup çalıştırarak, VDS'nin lokal portunu internet üzerinde yayınlayabilirsiniz. Fakat dikkat: VDS'ye SSH erişimi açık tutmalısınız. Güvenlik için firewall kurallarına bakın.

Güvenlik Konuları ve Üretim Öncesi Notlar

Ngrok tünelleri, geliştirme aşamasında harika bir araç olsa da, üretim ortamında kullanılmamalıdır. Ngrok ücretsiz sürümü bağlantı kapattığında yeni URL oluşur; bu da entegrasyonları bozar. Ek olarak, trafik Ngrok sunucularından geçtiği için gizlilik riski vardır. Test tamamlandıktan sonra, ana VDS'nizin firewall'ını açıp doğrudan VDS IP'sinden webhook'ları almalısınız. Geliştirme aşamasında da, webhook payload'ında hassas veriler göndermemeye dikkat edin.

Ngrok Alternatifleri

Ngrok benzeri araçlar da mevcuttur: localtunnel (daha hafif, açık kaynak), serveo.net (SSH tabanlı, hiç kurulum gerektirmez), expose.dev (ücretli, daha hızlı). Fakat Ngrok, webhook test senaryolarında en güvenilir ve en çok kullanılan araçtır.

Ngrok sayesinde geliştirme-test süresi önemli ölçüde kısalır. VDS'de çalışan ana uygulamanızı düzenlemeden, lokal makinenizde hızlı iterasyon yapabilir, webhook'ları doğrulayabilirsiniz. Stripe, PayPal, Twilio gibi API'ler ile integre çalışan uygulamalar geliştiriyorsanız, Ngrok olmadan test süreci çok daha zorlu olur. Bogahost'un VDS paketleriyle, geliştirme ve test ortamları tamamen kendi kontrolünüzde; Ngrok gibi araçlarla da yerel uygulamalarınızı hızlıca doğrulayabilirsiniz.

Web Siteniz Hızlansın!

Blogumuzu beğendiniz mi? Web siteniz için yüksek performanslı ve %99.9 uptime garantili hosting paketlerimize göz atın.

Paketleri İncele →