springboot 如何修改默認端口及application.properties常用配置
springboot 修改默認端口及application.properties常用配置
Spring boot 默認端口是8080,如果想要進行更改的話,隻需要修改applicatoin.properties文件,在配置文件中加入:
server.port=9090
其他常用配置:
(一)、server配置
server.address #指定server綁定的地址 server.compression.enabled #是否開啟壓縮,默認為false. server.compression.excluded-user-agents #指定不壓縮的user-agent,多個以逗號分隔,默認值為:text/html,text/xml,text/plain,text/css server.compression.mime-types #指定要壓縮的MIME type,多個以逗號分隔. server.compression.min-response-size #執行壓縮的閾值,默認為2048 server.context-parameters.[param name] #設置servlet context 參數 server.context-path #設定應用的context-path. server.display-name #設定應用的展示名稱,默認: application server.jsp-servlet.class-name #設定編譯JSP用的servlet,默認: org.apache.jasper.servlet.JspServlet) server.jsp-servlet.init-parameters.[param name] #設置JSP servlet 初始化參數. server.jsp-servlet.registered #設定JSP servlet是否註冊到內嵌的servlet容器,默認true server.port #設定http監聽端口 server.servlet-path #設定dispatcherservlet的監聽路徑,默認為: /
(二)、cookie、session配置
server.session.cookie.comment #指定session cookie的comment server.session.cookie.domain #指定session cookie的domain server.session.cookie.http-only #是否開啟HttpOnly. server.session.cookie.max-age #設定session cookie的最大age. server.session.cookie.name #設定Session cookie 的名稱. server.session.cookie.path #設定session cookie的路徑. server.session.cookie.secure #設定session cookie的“Secure” flag. server.session.persistent #重啟時是否持久化session,默認false server.session.timeout #session的超時時間 server.session.tracking-modes #設定Session的追蹤模式(cookie, url, ssl).
(三)、ssl配置
<span style="font-size:12px;">server.ssl.ciphers #是否支持SSL ciphers. server.ssl.client-auth #設定client authentication是wanted 還是 needed. server.ssl.enabled #是否開啟ssl,默認: true server.ssl.key-alias #設定key store中key的別名. server.ssl.key-password #訪問key store中key的密碼. server.ssl.key-store #設定持有SSL certificate的key store的路徑,通常是一個.jks文件. server.ssl.key-store-password #設定訪問key store的密碼. server.ssl.key-store-provider #設定key store的提供者. server.ssl.key-store-type #設定key store的類型. server.ssl.protocol #使用的SSL協議,默認: TLS server.ssl.trust-store #持有SSL certificates的Trust store. server.ssl.trust-store-password #訪問trust store的密碼. server.ssl.trust-store-provider #設定trust store的提供者. server.ssl.trust-store-type #指定trust store的類型.</span>
(四)、tomcat配置
<span style="font-size:14px;">server.tomcat.access-log-enabled #是否開啟access log ,默認: false) server.tomcat.access-log-pattern #設定access logs的格式,默認: common server.tomcat.accesslog.directory #設定log的目錄,默認: logs server.tomcat.accesslog.enabled #是否開啟access log,默認: false server.tomcat.accesslog.pattern #設定access logs的格式,默認: common server.tomcat.accesslog.prefix #設定Log 文件的前綴,默認: access_log server.tomcat.accesslog.suffix #設定Log 文件的後綴,默認: .log server.tomcat.background-processor-delay #後臺線程方法的Delay大小: 30 server.tomcat.basedir #設定Tomcat的base 目錄,如果沒有指定則使用臨時目錄. server.tomcat.internal-proxies #設定信任的正則表達式,默認:“10\.\d{1,3}\.\d{1,3}\.\d{1,3}| 192\.168\.\d{1,3}\.\d{1,3}| 169\.254\.\d{1,3}\.\d{1,3}|127\.\d{1,3}\.\d{1,3}\.\d{1,3}| 172\.1[6-9]{1}\.\d{1,3}\.\d{1,3}| 172\.2[0-9]{1}\.\d{1,3}\.\d{1,3}|172\.3[0-1]{1}\.\d{1,3}\.\d{1,3}” server.tomcat.max-http-header-size #設定http header的最小值,默認: 0 server.tomcat.max-threads #設定tomcat的最大工作線程數,默認為: 0 server.tomcat.port-header #設定http header使用的,用來覆蓋原來port的value. server.tomcat.protocol-header #設定Header包含的協議,通常是 X-Forwarded-Proto,如果remoteIpHeader有值,則將設置為RemoteIpValve. server.tomcat.protocol-header-https-value #設定使用SSL的header的值,默認https. server.tomcat.remote-ip-header #設定remote IP的header,如果remoteIpHeader有值,則設置為RemoteIpValve server.tomcat.uri-encoding #設定URI的解碼字符集.</span>
<p><span style="font-size:18px"></span></p>
springboot application.properties server.port配置小問題
近年來,springboot以其快速構建方便便捷,開箱即用,約定優於配置(Convention Over Configuration)的特性深受廣大開發者喜愛。
springboot已經集成配置好瞭一套web開發的默認配置,開發者可以無需修改任何配置即可開始一個web工程,但是實際情況中有時候開發者還是需要修改部分默認配置項來使其更加契合自己的項目需求。下面就其中一個小問題做個記錄。
在配置服務啟動的端口時,springboot默認在application.properties配置文件中提供瞭server.port配置項來
讓開發者自行配置服務啟動端口號,**但是註意:**
#服務啟動端口號 server.port=8889
該配置項要想生效其實是依賴於項目中內嵌的tomcat容器,如下圖:
內嵌tomcat的jar包依賴包含在pom中
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
如果pom中不引人上述依賴,那麼項目中不會導入內嵌tomcat的jar包,相應的application.properties配置文件中server.port配置項也將無法生效,因為該配置項實際上修改的就是內嵌tomcat的web端口號。
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- Springboot2 session設置超時時間無效的解決
- SpringBoot如何切換成其它的嵌入式Servlet容器(Jetty和Undertow)
- springboot 設置server.port不生效的原因及解決
- 詳解Springboot應用中設置Cookie的SameSite屬性
- 解決springboot application.properties server.port配置問題