Skip to main content
本參考指南涵蓋了 arc.properties 檔案中所有支援的配置選項。該檔案用於嵌入式 Jetty Web 伺服器 要將這些選項新增到 應用程式,請使用文字編輯器開啟 arc.properties 檔案(位於安裝目錄中),然後新增相應的語法。可以在下面找到每個選項的範例。
以下選項在實現過程中的任何 .properties 檔案中均可使用。

使用變數

您可以在配置選項中提供變數,但必須注意以下事項:
  • 您可以將變數用作屬性值,但不能將其用作屬性名稱。
  • 變數名稱區分大小寫。
  • 系統屬性優先於環境變數。如果在系統屬性或環境變數中未找到變數,則預設為空字串。
  • 變數不能巢狀。例如,不允許使用 cdata.warPath=${cdata.prefix${cdata.arc}}/webapp
以下範例使用配置選項中的變數執行以下操作:
  • 定義初始化參數
  • 設定自定義標頭

配置選項

cdata.app.db

定義 使用的後端資料庫的連接字串。 cdata.app.db=jdbc:cdata:mysql:server=localhost;port=3306;database=mysql;user=MyUserName;password=MyPassword

cdata.app.directory

定義 的使用者資料儲存路徑。 cdata.app.directory=/mnt/shared/arc

cdata.contextPath

定義部署 Web 應用程式的基本 URL 路徑。它充當 Web 應用程式處理的所有 URL 的字首。 cdata.contextPath=/myapp 例如,如果應用程式託管在www.mydomain.com,則這可確保接收端點是http://www.mydomain.com/myapp/pub/Receive.rsb

cdata.encryption.key

指定 AES 金鑰檔案的路徑(包含隨機字串),或 PFX (PKCS#12) 憑證檔案,作為主要金鑰使用。主要金鑰用於加密加密金鑰,而加密金鑰則加密 中密碼和機密等敏感資料。僅在想要使用自定義金鑰或將金鑰儲存在非預設位置時才需要。 cdata.encryption.key=file:///var/opt/mykeys/mysecret.key 或者,如果使用 AES 金鑰,可以使用 APP_KEY 環境變數來提供金鑰檔案的檔案路徑。

cdata.encryption.key.password

定義用於主要金鑰的 PFX 檔案的密碼(使用 cdata.encryption.key 設定)。 cdata.encryption.key.password=MyS3curePa55w0rd 或者,可以使用環境變數(例如 ENCRYPTION_KEY_PASSWORD)來儲存密碼,並在此處引用。 cdata.encryption.key.password=${ENCRYPTION_KEY_PASSWORD}

cdata.fips.enabled

布林選項,用於控制是否啟用聯邦資訊處理標準 (FIPS) 模式。FIPS 是由美國聯邦政府制定的一套安全標準,用於計算機系統,以確保安全性、互操作性和資料完整性。 cdata.fips.enabled=true

cdata.http.customHeaders

允許您以以下格式的連接字串鍵值對的形式提供自定義標頭:key:value 當包含變數時,字串會在變數首次出現時拆分,並替換該變數。只有值可以使用變數。 cdata.http.customHeaders=Product-Version:[${ARC_ISSUER} 2025];/api.rsc,Product-Issuer:${ARC_ISSUER}

cdata.http.gzipEnabled

布林選項,用於控制是否為 HTTP 回應啟用 GZIP 壓縮。啟用後,Jetty 會自動壓縮回應以減少頻寬佔用,從而提高支援 GZIP 的用戶端的效能。 cdata.http.gzipEnabled=true

cdata.http.host

設定 Jetty HTTP 伺服器應繫結的主機/IP 地址。這決定了伺服器監聽傳入 HTTP 請求的網路介面。 cdata.http.host=192.168.0.27

cdata.http.idleTimeout

控制 HTTP 和 TLS 連線的空閒逾時時間。此設定決定 Jetty 在關閉連線之前等待連線活動的時間(以毫秒為單位)。

cdata.http.maxFormSize

定義 HTTP 表單提交(例如 application/x-www-form-urlencoded 和 multipart/form-data 請求)允許的最大大小(以位元組為單位)。它限制了表單提交(包括透過表單上傳檔案)中可處理的資料量。 cdata.http.maxFormSize=2000000

cdata.http.port

設定 執行和監聽的 HTTP 端口。 cdata.http.port=4080

cdata.http.proxyMode

布林選項,用於確定 Jetty 是在反向代理還是負載平衡器後面執行。啟用後,Jetty 會正確處理代理請求,包括 X-Forwarded-For 和 X-Forwarded-Proto 等標頭。
  • 如果設定為 true,Jetty 會信任來自代理的 X-Forwarded-* 標頭。
  • 如果設定為 false,Jetty 會忽略這些標頭並假定用戶端直接連線。
這可確保在代理後執行時能夠正確檢測用戶端 IP、進行 HTTPS 重新導向和主機解析。 cdata.http.proxyMode=true cdata.http.timeout=60000

cdata.initParameters

定義 Servlet 的初始化參數。這些參數是連線在一起的字串鍵值對,供 Servlet 或過濾器在執行時存取。它們必須以逗號分隔的字串形式設定,格式如下:key:value 當包含變數時,字串會在變數首次出現時被拆分,並替換該變數。只有值可以使用變數。 cdata.initParameters=ARCCLOUD_SERVICE_DEFINITION_PATH:${cdata.home}/service.json,APP_LOGS:${cdata.logdb}

cdata.loginService.ldap

這被解釋為 cdata.loginService.ldap.*。這些屬性用於在 Jetty 中配置輕量級目錄存取協議 (LDAP) 身分驗證,允許使用者透過 LDAP 伺服器進行身分驗證。支援多種屬性。在嵌入式 Jetty 伺服器上使用 LDAP 時,至少需要以下屬性:
arc.properties 的完整 LDAP 部分可能如下所示:
請參閱配置 LDAP 身分驗證以取得更多上下文以及受支援的屬性的完整清單。

cdata.loginService.ldap.enabled

布林值,用於確定 Jetty 中是否啟用了 LDAP 身分驗證。此屬性通常用於根據您的配置需求啟用或停用整個基於 LDAP 的登入服務。 cdata.loginService.ldap.enabled=true

cdata.requestLog.enabled

用於控制 Jetty 是否將 HTTP 請求記錄到存取日誌的布林值。啟用後,Jetty 會記錄傳入請求的詳細資訊,例如用戶端 IP、請求方法、回應狀態和回應時間。 cdata.requestLog.enabled=true

cdata.requestLog.filenameDateFormat

指定 Jetty 在輪轉日誌時附加到日誌檔名的日期格式模式。這有助於按天、小時或自定義間隔整理日誌。
  • cdata.requestLog.filename 一起使用,生成輪轉日誌檔名。
  • 該格式遵循 Java 的 SimpleDateFormat 模式。預設值為 yyyy_MM_dd,表示每天建立一個新的日誌檔案。
  • 如果為空 (""),Jetty 將停用基於日期的輪轉。
cdata.requestLog.filenameDateFormat=MM_dd_yyyy

cdata.requestLog.retainDays

指定 Jetty 在自動刪除舊存取日誌之前保留它們的天數。
  • 預設值為 31,表示 Jetty 會在刪除日誌之前保留 31 天。
  • 設定為 0 時,Jetty 將停用日誌保留,這意味著日誌永遠不會自動刪除。
  • cdata.requestLog.filenameDateFormat 一起使用,用於管理輪換日誌檔案。
cdata.requestLog.retainDays=90

cdata.session.timeout

定義 Jetty Web 伺服器中使用者會話過期之前的最大不活動持續時間(以秒為單位)。
  • 預設值為 600 秒(10 分鐘)。
  • 小於或等於 0 的值將被忽略。
cdata.session.timeout=1200

cdata.tempDirectory

定義應用程式使用的臨時目錄的位置。 cdata.tempDirectory=/tmp/arc

cdata.tls.keyStoreType

指定 Jetty 應用於 TLS/SSL 憑證的金鑰庫型別。金鑰庫包含 Jetty 建立安全 HTTPS 連線所需的私密金鑰和 SSL 憑證。 常見型別包括 JKS、PKCS12、BKS 和 PEM。 cdata.tls.keyStoreType=PEM

cdata.tls.keyStorePassword

定義指定金鑰庫的密碼。 cdata.tls.keyStorePassword=Password123

cdata.tls.keyStorePath

指定 Jetty 應用於 TLS/SSL 加密的金鑰庫的檔案路徑。 cdata.tls.keyStorePath=/pathto/mykeystore.jks

cdata.tls.port

指定 Jetty 用於 TLS(HTTPS)連線的端口號。這是 cdata.http.port 的安全替代方案,用於純 HTTP 流量。 cdata.tls.port=443

cdata.tls.sniHostCheck

布林值,控制 Jetty 是否在 TLS/SSL 連線中的伺服器名稱指示 (SNI) 處理期間強制執行主機名驗證。 cdata.tls.sniHostCheck=true

cdata.warPath

如果 arc.war 檔案位於其他位置,則設定其路徑。 cdata.warPath=${cdata.home}/webapp/arc.war