تقدم هذه المقالة تكوين Tomcat للحاوية المدمجة في Spring Boot ، وتشاركها معك ، على النحو التالي:
الحاوية الافتراضية
يمكّن برنامج الويب الافتراضي لـ Spring Boot Tomcat Tomcat Tomcat من Tomcat للاستماع إلى المنفذ 8080 ، و Servletpath الافتراضي هو / من خلال تعديل المنفذ ومسار السياق. في صندوق الربيع ، طريقة التعديل الخاصة بها بسيطة للغاية ؛
تكوين في ملف المورد:
server.port = 9090 server.contextpath =/lkl
ابدأ الحذاء الربيعي
2015-10-04 00: 06: 55.768 info 609 --- 00: 06: 55.844 info 609 --- [Main] OsjeAannotationMbeanexporter: تسجيل حبوب للتعرض JMX على Startup2015-10-04 00: 06: 55.928 info 609 --- 00: 06: 55.930 Info 609 --- [Main] com.lkl.springboot.Application: Attlege Application في 3.906 ثانية (JVM يعمل لمدة 4.184)
يمكن ملاحظة أن منفذ الاستماع الخاص به 9090 يتم الوصول إليه بنجاح من خلال تنفيذ http: // localhost: 9090/lkl/springboot/liaokailin.
مخصص tomcat
في المشاريع الفعلية ، لن يلبي التكوين البسيط لمنافذ Tomcat بالتأكيد احتياجات الجميع ، لذلك تحتاج إلى تخصيص معلومات تكوين Tomcat للتحكم في Tomcat بمرونة.
خذ مثال تحديد الترميز الافتراضي
Package com.lkl.springboot.container.tomcat ؛ استيراد org.springframework.boot.context.embedded.embeddedservletcontainerfactory org.springframework.context.annotation.bean ؛ استيراد org.springframework.context.annotation.configuration ؛/** tomcatconfig {bean public inmbedservletcontainerfactory servletContainer () {tomcatembeddedservletcontainerfactory tomcat = tomcatembeddedservletcontainerfactory () ؛ tomcat.setUrienCoding ("UTF-8") ؛ إرجاع Tomcat. }}قم ببناء فول من مثيل TomCatemBedDedServletContainerFactory ، وبعد الحصول على مثيل tomcatembeddedservletcontainerfactory ، على سبيل المثال ، تم تعيين الترميز على UTF-8 هنا.
تكوين SSL
إنشاء شهادة
keytool -genkey -alias springboot -keyalg rsa -keystore/user
تحقق من أن الشهادة صحيحة في Tomcat
تعديل ملف tomcat/conf/server.xml
<connector protocol = "org.apache.coyote.http11.http11nioprotocol" port = "8443" maxThReads = "200" scheme = "https" secure = "true" sslenabled = "true" keystorefile = "/users/liaokailin/ca ca1/keystore" 12345 " ClientAuth = "false" sslprotocol = "tls"/>
ابدأ Tomcat وزيارة http: // localhost: 8443
SPRING BOOT مضمن TOMCAT SSL
تكوين ملفات الموارد
server.port = 8443server.ssl.enabled = trueserver.ssl.keyalias = springbootserver.ssl.keypassword = 123456server.ssl.keystore =/user/liaokailin/software/ca1/keystore
ابدأ الحذاء الربيعي
تفضل بزيارة https: // localhost: 8443/springboot/helloworld
تكوين مراقبة متعدد المنافذ
بعد بدء SSL ، يمكنك فقط الانتقال إلى HTTPS ولا يمكنك الوصول إليه من خلال HTTP. إذا كنت ترغب في الاستماع إلى منافذ متعددة ، فيمكنك استخدام الترميز لتنفيذها.
1. قم بتسجيل الخروج من تكوين SSL السابق وضبط خادم التكوين. port = 9090
2. تعديل tomcatconfig.java
package com.lkl.springboot.container.tomcat ؛ استيراد java.io.file ؛ استيراد org.apache.catalina.connector.connector ؛ import org.apache.coyote.http11.http11nioprotocol ؛ استيراد الاستيراد ؛ الاستيراد org.springframework.boot.context.embedded.embedDedServletContainerFactory ؛ استيراد org.springframework.boot.context.embedded.tomcat.tomcateddedservletcontainerfactory ؛ org.springframework.context.annotation.configuration ؛/** * تكوين tomcat * @Auuthor liaokailin * version $ id: tomcatconfig.java ، v 0.1 October 4 ، 2015 liaokailin exp $ */ @configurationpublic tomcatconfig {tomcatembeddedServletContainerFactory Tomcat = new TomCatemBedDedServletContainerFactory () ؛ tomcat.setUrienCoding ("UTF-8") ؛ tomcat.addadditionaltomcatconnectors (createSslConnector ()) ؛ إرجاع Tomcat. } الموصل الخاص CreateSslConnector () {موصل الموصل = موصل جديد ("org.apache.coyote.http11.http11nioprotocol") ؛ protocol http11nioprotocol = (http11nioprotocol) connector.getProtocolhandler () ؛ حاول {file truststore = ملف جديد ("/المستخدمين/liaokailin/software/ca1/keystore") ؛ Connector.SetScheme ("https") ؛ بروتوكول. Connector.SetSecure (true) ؛ Connector.setport (8443) ؛ protocol.setKeyStoreFile (truststore.getabsolutepath ()) ؛ protocol.setkeystorepass ("123456") ؛ protocol.setkeyalias ("Springboot") ؛ موصل الإرجاع ؛ } catch (استثناء ex) {رمي جديد غير aluvalstateException ("غير قادر على الوصول إلى keystore: [" + "keystore" + "]" ، ex) ؛ }}} إضافة اتصالات استماع متعددة من خلال طريقة addadditionaltomcatconnectors ؛ في هذا الوقت ، يمكنك استخدام منفذ HTTP 9090 ومنفذ HTTPS 8443.
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.