HAProxy
  • Giriş
  • Nedir?
  • Ne Değildir?
  • Nasıl Çalışır?
  • Kurulum
    • Kaynak Kod ile Derlemek
    • Sunucu için HAProxy Kurulumu
    • Paket Yöneticisi ile Kurulumu
  • Temel Yapı ve Terimler
    • Format
    • Global
    • Defaults
    • Frontend
    • Backend
    • Örnek Konfigürasyon
  • SSL Termination
    • Giriş
    • SSL Termination Faydaları
    • HAProxy ile SSL'yi etkinleştirme
    • HTTP'den HTTPS'e yönlendirme
    • SSL Sürümlerini Sınırlama
    • Sertifikaları Sınırlama
    • SNI ile Sertifika Seçimi
    • EC ve RSA Destekleme
    • İstemci Sertifikaları
  • ACL
    • Giriş
    • Format
    • Fetches
    • Converters
    • Flags
    • Matching methods
  • Maps
    • Format
    • Converters
    • Map Güncellemek
      • Dosyayı Doğrudan Düzenleme
      • lb-update Modülü Kullanarak
      • Runtime API Kullanarak
      • http-request set-map
  • Multithreading
    • Giriş
    • Multiprocess to Multithreading
    • Multithreading Desteği
    • Multithreading Yapılandırma
  • Prometheus Metrics
    • Giriş
    • Native Prometheus Desteği
    • Prometheus ile Derlemek
    • HAProxy'yi Yapılandırma
    • HAProxy Exporter
  • Stats Page
    • Giriş
  • Kaynak
Powered by GitBook
On this page

Was this helpful?

  1. Maps
  2. Map Güncellemek

http-request set-map

Dosyaları elle düzenlemek veya Runtime API'sını kullanmak istemediğinizi varsayalım. Bunun yerine, belirli bir URL parametresi ile bir HTTP isteği yapabilmek ve Map dosyanızı güncellemek istediniz. Bu durumda, http-request set-map kullanılır. Bu, çalışma sırasında bir Map'in ne zaman ve nasıl değiştirileceğine karar vermek için fetches, converters ve ACL'lerin kullanılmasına izin verir.

set-map'e ek olarak, Map girişlerini aynı şekilde kaldırmanıza izin veren del-map de vardır. Runtime API'sinde olduğu gibi, bu değişiklikler yalnızca isteğin sona erdiği süreç için de geçerlidir. Map dosyasının yolunu set-map'e aktarın ve eklemek veya güncellemek istediğiniz boşluklarla ayrılmış bir anahtar ve değerle takip edin.

Hem anahtar hem de değer, günlük biçimi gösterimini destekler; böylece bunları düz dizeler olarak belirtebilir veya fetches ve converters kullanabilirsiniz. Örneğin, hosts.mapdosyasına yeni bir girdi eklemek için, ancak yalnızca kaynak adres 192.168.122.0/24 aralığına giriyorsa, aşağıdaki gibi bir yapılandırma kullanabilirsiniz:

frontend fe_main
    bind :80
    acl in_network src 192.168.122.0/24
    acl is_map_add path_beg /map/add
    http-request set-map(/etc/haproxy/maps/hosts.map) %[url_param(domain)] %[url_param(backend)] if is_map_add in_network
    http-request deny deny_status 200 if { path_beg /map/ }
    use_backend %[req.hdr(host),lower,map(/etc/haproxy/maps/hosts.map)]

PreviousRuntime API KullanarakNextGiriş

Last updated 5 years ago

Was this helpful?