𝗦𝘂𝗻𝘂𝗰𝘂 𝗬𝗮𝗽ı𝗹𝗮𝗻𝗱ı𝗿𝗺𝗮𝘀ı

Statik dosyaların sunulması, web geliştirmenin temel bir parçasıdır. Kullanıcılarınıza HTML, CSS, JS ve görseller iletmeniz gerekir.

Hyperlane framework'ünde bunu middleware kullanarak yaparsınız. Middleware, istekleri yakalar ve dosyaları diskinizden okur.

Süreç dört adımdan oluşur:

  • Yol çözümleme (Path resolution): URL'leri dosya sisteminizle eşleştirin.
  • İçerik türü algılama (Content type detection): Doğru MIME türünü bulun.
  • Dosya okuma: Verileri diskten çekin.
  • Yanıt iletimi: Dosyayı istemciye gönderin.

Hyperlane, FileExtension yardımcı aracıyla bunu kolaylaştırır. Şu türleri otomatik olarak algılar: • .html -> text/html • .css -> text/css • .js -> application/javascript • .png -> image/png

Statik dosya sunumu için en iyi uygulamalar:

  1. Asenkron I/O kullanın Dosyaları okumak için her zaman tokio::fs kullanın. Bu, sunucunuzun engellenmesini (blocking) önler.

  2. Dizin isteklerini yönetin Eğer bir yol eğik çizgi (/) ile bitiyorsa, bir index.html dosyası arayın. Bu, web sitelerinin doğru şekilde sunulmasına yardımcı olur.

  3. Doğru başlıkları (headers) ayarlayın Doğru Content-Type'ı gönderdiğinizden emin olun. Dosyaları diğer etki alanlarına (domains) sunuyorsanız, CORS başlıklarını ekleyin.

  4. Güvenlik ve hatalar

  • 404 hataları döndürmek için dosya varlığını kontrol edin.
  • Dizin gezginliği (directory traversal) saldırılarını önlemek için yolları temizleyin (sanitize).
  • Varlıklarınız (assets) gizliyse kimlik doğrulama middleware'i kullanın.

Hyperlane, verimli ve güvenli dosya sunucuları oluşturmanız için size gerekli araçları sağlar. Dosyalarınızı tam olarak kimin göreceğini kontrol etmek için bu araçları rota filtreleri (route filters) ile birleştirebilirsiniz.

Project Code: https://github.com/hyperlane-dev/hyperlane

Source: https://dev.to/tengxgfyrz67s/server-configuration-8i7