針對傳出請求使用 Proxy 伺服器
從 9.3.4 開始,ThingWorx Platform 針對大多數傳出請求支援 HTTP/HTTPS Proxy。ThingWorx Platform 的某些區域支援明確 Proxy,例如 ContentLoaderFunctions。如果未提供明確 Proxy,ThingWorx Platform 會使用針對 ThingWorx Platform 配置的 Proxy (若有)。
|
目前,ThingWorx Platform 僅支援明確 Proxy。目前不支援將 Proxy 支援與例如 DPM 這類的解決方案搭配使用,這可能會導致發生意外結果。
|
ThingWorx Platform Proxy 功能不支援需要驗證的 Proxy。Proxy 伺服器目前不支援「單一登入」與 ActiveDirectory DirectoryService。欲使用 JVM 設定變更 Proxy 支援,請在執行變更後重新啟動 ThingWorx Platform。
組態
Proxy 支援使用 Java Runtime 的基礎支援,由啟動
ThingWorx Platform 時的 Java 系統內容指定。將 Java 系統內容作為
-Dkey=value 新增至 Apache Tomcat。新增內容的位置會因安裝的作業系統而有所不同。視所需的特定 Proxy 設定而定,可以配置數個 Proxy 內容。如需詳細資訊,請參閱
Java 文件集。
HTTP/HTTPS Proxy
ThingWorx Platform 會在請求 HTTP 資源時使用已配置的 HTTP Proxy。Java 系統內容 http.proxyHost 與 http.proxyPort 分別定義了主機與連接埠。可指定 http.nonProxyHosts 來包含不得通過 Proxy 的任何資源。擁有 ThingWorx Platform 需要存取的僅限內部資源很有用。請使用直立線符號 (|) 來分隔值。http.nonProxyHosts 的預設值包括用來存取本機系統 (localhost|127.*|[::1]) 的所有變體。請提供預設值以及您需要新增的任何自訂值。
當請求 HTTPS 資源時,ThingWorx Platform 會使用已配置的 HTTPS Proxy。Java 系統內容 https.proxyHost 與 https.proxyPort 分別定義了主機與連接埠。HTTPS Proxy 使用與 HTTP 相同的非 Proxy 主機清單 (http.nonProxyHosts)。
使用主機 Proxy 設定
Java Runtime 也允許使用在主機上定義的 Proxy 設定,而不是直接配置 HTTP/HTTPS Proxy。欲在作業系統設定中啟用 Proxy 組態,請在 CATALINA_OPTS 下,將 Java 系統內容 java.net.useSystemProxies 設定為 true。作業系統設定可讓您依賴可能會在主機系統上使用的 Proxy Auto-Config (PAC) 檔案與 Web Proxy Auto-Discovery (WPAD) 進行複雜的 Proxy 設定。
如果將 ThingWorx Platform 配置為使用主機 Proxy 設定,則 Proxy 可在執行時間變更。
針對容器使用主機 Proxy 設定
在 docker 或 Kubernetes 環境中執行的容器並不會顯示給實際主機系統。因此,使用主機 Proxy 設定可能無法如預期運作。如果容器需要傳出 Proxy,則必須透過 Apache Tomcat 的 HTTP/HTTPS Proxy 內容直接進行配置。請使用 CATALINA_OPTS 環境變數來配置這些 Java 系統內容。