Konfiguracja serwera

Serwowanie plików statycznych to kluczowy element tworzenia stron internetowych. Musisz dostarczać użytkownikom pliki HTML, CSS, JS oraz obrazy.

W frameworku Hyperlane odbywa się to za pomocą middleware. Middleware przechwytuje żądania i odczytuje pliki z dysku.

Proces składa się z czterech kroków:

  • Rozwiązywanie ścieżek: Mapowanie adresów URL na system plików.
  • Wykrywanie typu zawartości: Znalezienie odpowiedniego typu MIME.
  • Odczytywanie plików: Pobieranie danych z dysku.
  • Dostarczanie odpowiedzi: Przesłanie pliku do klienta.

Hyperlane ułatwia to zadanie dzięki narzędziu FileExtension. Automatycznie wykrywa ono typy takie jak: • .html jako text/html • .css jako text/css • .js jako application/javascript • .png jako image/png

Dobre praktyki przy serwowaniu plików statycznych:

  1. Używaj asynchronicznego I/O Zawsze używaj tokio::fs do odczytywania plików. Zapobiega to blokowaniu serwera.

  2. Obsługuj żądania katalogów Jeśli ścieżka kończy się ukośnikiem, szukaj pliku index.html. Pomaga to w prawidłowym serwowaniu witryn.

  3. Ustaw poprawne nagłówki Upewnij się, że wysyłasz właściwy Content-Type. Jeśli serwujesz pliki dla innych domen, dodaj nagłówki CORS.

  4. Bezpieczeństwo i błędy

  • Sprawdzaj istnienie plików, aby zwracać błędy 404.
  • Sanizuj ścieżki, aby zapobiec atakom typu directory traversal.
  • Używaj middleware uwierzytelniającego, jeśli Twoje zasoby są prywatne.

Hyperlane zapewnia narzędzia do budowy wydajnych i bezpiecznych serwerów plików. Możesz łączyć te narzędzia z filtrami tras, aby dokładnie kontrolować, kto widzi Twoje pliki.

Kod projektu: https://github.com/hyperlane-dev/hyperlane

Źródło: https://dev.to/tengxgfyrz67s/server-configuration-8i7