Proxy Otomatik Yapılandırmasındaki Değişiklikler (PAC)
list-menuGeri Bildirim?
RoomOS yazılımında pacmanager için Proxy Otomatik Yapılandırma (PAC) eşleştirmesinin nasıl çalıştığını değiştiriyoruz.

Web motoru da dahil olmak üzere büyük web tarayıcıları tarafından kullanılan PAC kuralı, değiştirilmiş bir normal ifade sözdizimi kullanmaktır. Şimdiye kadar, pacmanager eşleştirme için sıradan normal ifadeler kullandı. ShexpMatch işlevini tarayıcılara benzer bir eşleştirme kullanmak için değiştiriyoruz.

Bu değişiklik, RoomOS'un ağdaki diğer web istemcileri ile aynı PAC dosyası eşleşmeleriyle çalışacağı anlamına gelir. RoomOS için özel olarak yazılmış PAC dosyalarının amaçlandığı gibi çalışmaya devam etmek için güncellenmesi gerekebilir.

PAC dosya değerlendirmesi RoomOS yazılımında iki ayrı yerde yapılır:

  • Kendi trafiği için web motoru.

  • Diğer tüm HTTP trafiği için Pacmanager: HttpFeedback, Webex provizyonu, çağrı sinyali vb.

Bir PAC dosyası şu işlevi kullanabilir: SHexpMatch (string, pattern)

Dize desenle eşleşirse true, aksi takdirde false değerini döndürür.

İki kural arasındaki temel farklar aşağıda listelenmiştir, “REGEX” geleneksel düzenli ifadeler ve “BROWSER” web tarayıcısı kuralı anlamına gelir.

Nokta işareti, “.”

  • REGEX:. niceleyici ile tekrarlanabilen tek bir karakterle eşleşir

  • TARAYICI:. yalnızca gerçek bir nokta karakteriyle eşleşir

Yıldız, “*”:

  • REGEX: *, bir öğeden sonra sıfır veya daha fazla niceleyicidir, ancak kendi başına hiçbir şeyle eşleşmez

  • TARAYICI: * sıfır veya daha fazla karakterle eşleşir

Soru işareti, “?” :

  • REGEX:? bir öğeden sonra sıfır veya bir niceleyicidir veya * niceleyicisini açgözlü olmayacak şekilde değiştirebilir, ancak kendi başına hiçbir şeyle eşleşmez

  • TARAYICI:? tek bir karakterle eşleşir

İfadenin tamamının eşleşmesi gerekip gerekmediği:

  • REGEX: Baştan gelen ^ ve sondaki $ kullanılmadan, PATTERN'ın tüm STRING ile eşleşmesi gerekmez: STRING'in eşleşen bir alt dizeyi içermesi yeterlidir.

  • TARAYICI: STRING'in her zaman PATTERN ile tam olarak eşleştirilmesini gerektirir

Örnekler

“provider.domain” altındaki tüm ana bilgisayar adlarını eşleştirmek istiyoruz, ancak “otherprovider.domain”, “provider.domain.tld” veya “providersdomain” altında eşleştirmek istiyoruz:

REGEX:


     shExpMatch(url, "^.*\\.provider\\.domain$") 
   

BROWSER:


     shExpMatch(url, "*.provider.domain") 
   

“proxy1.domain”, “proxy2.domain” ve benzerlerini eşleştirmek istiyoruz, ancak “proxytest.domain” değil:

REGEX:


     shExpMatch(url, "^proxy.\\.domain$") 
   

BROWSER:


     shExpMatch(url, "proxy?.domain") 
   

Diğer kaynaklar

PAC dosya biçimi hakkında daha fazla ayrıntı için bkz. https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_PAC_file .

body>
Bu makale yararlı oldu mu?
Bu makale yararlı oldu mu?