웹 엔진을 포함한 주요 웹 브라우저에서 사용하는 PAC 규칙은 수정된 정규식 구문을 사용하는 것입니다. 지금까지 패키지 관리자는 일치에 일반 정규식을 사용했습니다. 브라우저와 유사한 일치를 사용하도록 shExpMatch 기능을 변경하고 있습니다.

이 변경은 RoomOS가 네트워크의 다른 웹 클라이언트와 동일한 PAC 파일 일치를 사용하여 작동하는 것을 의미합니다. RoomOS를 위해 특별히 작성된 PAC 파일이 의도한 대로 작동하려면 업데이트해야 할 수 있습니다.

PAC 파일 평가는 RoomOS 소프트웨어의 두 가지 별도 위치에서 수행됩니다.

  • 자체 트래픽에 대한 웹 엔진입니다.

  • 다른 모든 HTTP 트래픽인 HttpFeedback, Webex 프로비저닝, 통화 신호 처리 등에 대한 패키지 관리자.

PAC 파일을 통해 이 기능을 사용할 수 있습니다. shExpMatch(string, pattern)

문자열이 패턴과 일치하는 경우에는 true를 반환하고, 그렇지 않으면 false를 반환합니다.

전통적인 정규식을 의미하는 "REGEX"와 웹 브라우저 규칙을 의미하는 "BROWSER"와 함께 두 규칙의 주요 차이점이 아래에 나열되어 있습니다.

점 기호, "."

  • REGEX: .은 단일 문자와 일치하며, 이 문자는 수량자로 반복될 수 있음

  • BROWSER: .은 리터럴 점 문자만 일치함

별표, "*":

  • REGEX: *는 항목 뒤에 0개 이상의 수량자가 있지만 자체적으로 일치하는 것은 없음

  • BROWSER: *는 0개 이상의 문자를 일치함

물음표, "?":

  • REGEX: ?는 항목 뒤에 0 또는 1개의 수량자가 있거나 * 수량자를 어느 정도 수정할 수 있지만 자체적으로 일치하는 것은 없음

  • BROWSER: ?는 단일 문자를 일치함

전체 식이 일치해야 하는지 여부:

  • REGEX: 선행 ˆ 및 후행 $를 사용하지 않으면 패턴이 전체 STRING과 일치할 필요가 없습니다. STRING에 일치하는 하위 문자열이 포함되어 있으면 충분합니다.

  • BROWSER: STRING은 항상 PATTERN과 정확히 일치해야 함

"otherprovider.domain", "provider.domain.tld" 또는 "providersdomain"이 아닌 "provider.domain" 아래의 모든 호스트 이름을 일치시키려고 하는 경우:

REGEX:

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

BROWSER:

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

"proxytest.domain"이 아닌 "proxy1.domain", "proxy2.domain" 등을 일치시키려는 경우:

REGEX:

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

BROWSER:

shExpMatch(url, "proxy?.domain")

기타 리소스

PAC 파일 형식에 대 한 자세한 내용은 https://developer.mozilla.org/en-US/docs/Web/HTTP/Proxy_servers_and_tunneling/Proxy_Auto-Configuration_PAC_file을 참조하십시오.