如何配置Spring Boot Tomcat


1.概述

Spring Boot Web應用程序默認包含預配置的嵌入式Web服務器。但在某些情況下,我們要修改默認配置以滿足自定義要求。

在本教程中,我們將介紹通過application.properties文件配置Tomcat嵌入式服務器的一些常見用例。

2.常見的嵌入式Tomcat配置

2.1. 服務器地址和端口

我們希望更改的最常見配置是端口號:

server.port = 80

如果我們不提供server.port 參數,則默認設置為8080

在某些情況下,我們可能希望設置服務器應綁定的網絡地址。換句話說,我們定義一個服務器將監聽的IP地址:

server.address = my_custom_ip

默認情況下,該值設置為0.0.0.0,允許通過所有IPv4地址進行連接。設置另一個值,例如localhost -127.0.0.1 - 將使服務器更具選擇性。

2.2. 錯誤處理

默認情況下,Spring Boot提供標准錯誤網頁。此頁面稱為Whitelabel。它默認啟用,但如果我們不想顯示任何錯誤信息,我們可以禁用它:

server.error.whitelabel.enabled = false
  • Whitelabel的默認路徑是*/error*。可以通過設置server.error.path參數來自定義它:
server.error.path = /user-error

還可以設置屬性,以確定顯示有關錯誤的信息。例如,我們可以包含錯誤消息和堆棧跟蹤:

server.error.include-exception= true
server.error.include-stacktrace= always

我們的教程Exception Message Handling for REST和[Customize Whitelabel Error Page](www.baeldung.com/ spring-boot-custom-error-page) 詳細解釋有關Spring Boot中處理錯誤的更多信息。

2.3. 服務器連接

當在低資源容器上運行時,我們可能希望減少CPU和內存負載。一種方法是限制應用程序可以同時處理的請求數量。相反,我們可以增加此值以使用更多可用資源來獲得更好的性能。

Spring Boot中,我們可以定義Tomcat工作線程的最大數量:

server.tomcat.max-threads= 200

配置Web服務器時,設置服務器連接超時也可能很有用。這表示服務器在連接關閉之前等待客戶端發出請求的最長時間:

server.connection-timeout= 5s

我們還可以定義請求頭的最大大小:

server.max-http-header-size= 8KB

請求正文的最大大小:

server.tomcat.max-swallow-size= 2MB

或者整個POST請求的最大大小:

server.tomcat.max-http-post-size= 2MB

2.4. SSL

要在我們的Spring Boot應用程序中啟用SSL支持,我們需要將server.ssl.enabled屬性設置為true,並定義SSL協議:

server.ssl.enabled = true
server.ssl.protocol = TLS

我們要配置保存證書密鑰庫的密碼,類型和路徑:

server.ssl.key-store-password=my_password
server.ssl.key-store-type=keystore_type
server.ssl.key-store=keystore-path

我們還必須定義標識密鑰庫中密鑰的別名:

server.ssl.key-alias=tomcat

有關SSL配置的更多信息,請訪問:HTTPS using self-signed certificate in Spring Boot

2.5. Tomcat服務器訪問日志

在嘗試統計頁面命中數,用戶會話活動等時,Tomcat訪問日志非常有用。

要啟用訪問日志,只需設置:

server.tomcat.accesslog.enabled = true

我們還應該配置其他參數,例如附加到日志文件的目錄名,前綴,后綴和日期格式:

server.tomcat.accesslog.directory=logs
server.tomcat.accesslog.file-date-format=yyyy-MM-dd
server.tomcat.accesslog.prefix=access_log
server.tomcat.accesslog.suffix=.log

3. 結論

在本教程中,我們學習了一些常見的Tomcat嵌入式服務器配置。要查看更多可能的配置,請訪問官方頁面: Spring Boot application properties docs

與往常一樣,這些示例的源代碼可以在GitHub上找到。

原文鏈接:www.baeldung.com/spring-boot…

作者:baeldung

譯者:Leesen

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM