Wijzigingen in de automatische configuratie van de proxy (PAC)
list-menuFeedback?
We veranderen de manier waarop Proxy Auto-Configuration (PAC) matching werkt voor pacmanager in RoomOS-software.

De PAC-conventie die wordt gebruikt door de belangrijkste webbrowsers, waaronder de webengine, is om een aangepaste syntaxis voor reguliere expressies te gebruiken. Tot nu toe gebruikte pacmanager gewone reguliere expressies voor de matching. We zijn de SheXPMatch-functie aan het wijzigen om een vergelijking te gebruiken die vergelijkbaar is met de browsers.

Deze wijziging betekent dat RoomOS zal werken met dezelfde PAC-bestanden die overeenkomen met andere webclients in het netwerk. PAC-bestanden die specifiek voor RoomOS zijn geschreven, moeten mogelijk worden bijgewerkt om te kunnen blijven werken zoals bedoeld.

De evaluatie van het PAC-bestand gebeurt op twee verschillende plaatsen in de RoomOS-software:

  • Webingine voor eigen verkeer.

  • Pacmanager voor al het andere HTTP-verkeer: HTTPFeedback, Webex-provisioning, oproepsignalering, enzovoort.

Een PAC-bestand kan gebruik maken van deze functie: SheXPmatch (tekenreeks, patroon)

Het geeft true terug als de tekenreeks overeenkomt met het patroon, anders false.

De belangrijkste verschillen tussen de twee conventies worden hieronder opgesomd, waarbij „REGEX” traditionele reguliere expressies betekent en „BROWSER” de conventie voor de webbrowser betekent.

Het puntteken: „.”

  • REGEX:. komt overeen met een enkel teken, dat kan worden herhaald met een kwantor

  • BROWSER:. Komt alleen overeen met een letterlijke punt

De ster, „*”:

  • REGEX: * is een kwantor van nul of meer na een item, maar komt op zichzelf nergens overeen

  • BROWSER: * komt overeen met nul of meer tekens

Het vraagteken: „?” :

  • REGEX:? is een kwantor van nul of één na een item, of kan de * -kwantor zodanig wijzigen dat deze niet hebzuchtig is, maar die op zichzelf niets overeenkomt

  • BROWSER:? komt overeen met een enkel teken

Of de hele uitdrukking moet overeenkomen met:

  • REGEX: Zonder het gebruik van leading ^ en trailing $ hoeft het PATROON niet overeen te komen met de hele STRING: het is voldoende dat de STRING een subtekenreeks bevat die overeenkomt.

  • BROWSER: Zorg ervoor dat STRING altijd exact overeenkomt met PATTERN

Voorbeelden

We willen alle hostnamen onder „provider.domain” vergelijken, maar niet „otherprovider.domain”, „" provider.domain.tld "” of „" providersdomain "”:”

REGEX:


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

BROWSER:


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

We willen „proxy1.domain”, „proxy2.domain”, enzovoort, maar niet „proxytest.domain”:

REGEX:


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

BROWSER:


     shExpMatch(url, "proxy?.domain") 
   

Andere bronnen

Voor meer informatie over het PAC-bestandsformaat, zie: https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_PAC_file .

Vond u dit artikel nuttig?
Vond u dit artikel nuttig?