Apache Software Foundation tarafından geliştirilen Tomcat, dinamik Java tabanlı web uygulamalarını çalıştırmak için yaygın olarak kullanılır.
Tomcat Temel Yapılandırma Dosyaları
<Server port="8005" shutdown="SHUTDOWN">
<Service name="Catalina">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
</Service>
</Server>
<web-app>
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.example.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
# 3. context.xml
# Bireysel web uygulamaları için konteks yapılandırmalarını içerir.
# Her web uygulaması için özel yapılandırmalar bu dosyada belirtilir.
# Dosya yolu: conf/context.xml (global) ve her web uygulaması için META-INF/context.xml
<Context>
<Resource name="jdbc/MyDB" auth="Container"
type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000"
username="dbuser" password="dbpassword" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/mydb"/>
</Context>
# 4. tomcat-users.xml
# Tomcat'in kullanıcıları ve rollerini tanımlayan yapılandırma dosyasıdır.
# Yönetici ve diğer kullanıcı hesapları bu dosyada tanımlanır.
# Dosya yolu: conf/tomcat-users.xml
<tomcat-users>
<role rolename="manager-gui"/>
<user username="admin" password="admin" roles="manager-gui"/>
</tomcat-users>
# 5. logging.properties
# Tomcat'in loglama yapılandırmalarını belirler.
# Hangi logların, nereye ve nasıl yazılacağını tanımlar.
# Dosya yolu: conf/logging.properties
handlers = java.util.logging.ConsoleHandler
.level = INFO
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
# 6. catalina.properties
# Tomcat'in iç ayarlarını ve çeşitli sistem özelliklerini belirler.
# Dosya yolu: conf/catalina.properties
common.loader="${catalina.base}/lib,${catalina.base}/lib/*.jar"
server.loader=
shared.loader=
# 7. catalina.policy
# Java güvenlik politikalarını belirler.
# Hangi kodun hangi kaynaklara erişebileceğini kontrol eder.
# Dosya yolu: conf/catalina.policy
grant {
permission java.security.AllPermission;
};
# 8. host-manager.xml
# Tomcat Host Manager web uygulamasının yapılandırma dosyasıdır.
# Dosya yolu: conf/Catalina/localhost/host-manager.xml
<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/host-manager">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1"/>
</Context>
# 9. manager.xml
# Tomcat Manager web uygulamasının yapılandırma dosyasıdır.
# Dosya yolu: conf/Catalina/localhost/manager.xml
<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1"/>
</Context>