Tomcat网站发布配置方案详细说明
简介
Tomcat是一个开源的、轻量级的、需要Java环境的Web服务器,被广泛应用于Java Web开发领域。本文将介绍如何在Tomcat上发布网站并进行配置。
步骤
1. 下载安装Tomcat
将安装包下载到本地,解压到指定目录。例如解压到目录/opt/tomcat
。
2. 配置Tomcat
2.1 修改Tomcat配置文件
在/opt/tomcat/conf
目录下找到server.xml
文件,使用编辑器打开。找到以下代码:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
将port
属性的值修改为你想要的端口号,例如8081。
2.2 新建Tomcat用户
在/opt/tomcat/conf
目录下找到tomcat-users.xml
文件,使用编辑器打开。在文件末尾添加以下内容:
<role rolename="manager-gui"/>
<user username="admin" password="p@ssw0rd" roles="manager-gui"/>
其中username
和password
是管理Tomcat的用户名和密码,roles
属性设置为manager-gui
时表示该用户具有Web应用程序管理权限。
3. 发布Web应用程序
3.1 新建Web应用程序
在Tomcat根目录下的webapps
目录下新建一个文件夹,用于存放Web应用程序的文件。例如新建example
文件夹。
3.2 编写Web应用程序
在新建的文件夹中创建index.jsp
文件,并编写以下内容:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Tomcat Web应用程序示例</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
3.3 部署Web应用程序
重启Tomcat,访问http://localhost:8081/example
即可看到Web应用程序的效果。
4. 示例
4.1 示例一:访问数据库
假设Web应用程序需要访问MySQL数据库,可以按照以下步骤进行配置:
- 将
mysql-connector-java-8.0.23.jar
文件复制到Tomcat根目录下的lib
目录; - 在
/opt/tomcat/conf/Catalina/localhost
目录下创建一个以Web应用程序名称命名的XML文件,例如example.xml
,并编写以下内容:
<Context docBase="/opt/tomcat/webapps/example" debug="0" reloadable="true">
<Resource auth="Container" driverClassName="com.mysql.cj.jdbc.Driver"
maxTotal="8" maxIdle="4" name="jdbc/mysql" password="password" type="javax.sql.DataSource"
url="jdbc:mysql://localhost:3306/example?serverTimezone=Asia/Shanghai"
username="root" validationQuery="select 1"/>
</Context>
注意其中的name
属性和url
属性以及对应的用户名和密码设置。
- 在Web应用程序的代码中使用
JNDI
获取数据库连接:
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup("java:/comp/env");
DataSource dataSource = (DataSource) envContext.lookup("jdbc/mysql");
Connection conn = dataSource.getConnection();
4.2 示例二:给Web应用程序部署HTTPS协议
假设Web应用程序需要支持HTTPS协议,可以按照以下步骤进行配置:
- 在Tomcat根目录下的
conf
目录下新建文件夹ssl
,并将服务器的证书和密钥文件放入其中; - 修改Tomcat配置文件
server.xml
,新增以下内容:
<Connector port="443" protocol="HTTP/1.1"
SSLEnabled="true"
maxHttpHeaderSize="8192"
maxThreads="150"
minSpareThreads="25"
maxSpareThreads="75"
enableLookups="false"
disableUploadTimeout="true"
acceptCount="100"
scheme="https"
secure="true"
clientAuth="false"
sslProtocol="TLS"
keystorePass="password"
keystoreFile="/opt/tomcat/conf/ssl/server.keystore"
keyAlias="server"
truststoreFile="/opt/tomcat/conf/ssl/server.truststore"
clientAuth="true"
truststorePass="password"/>
注意其中的证书和密钥文件、密码和别名等设置。
- 在Web应用程序的代码中使用HTTPS协议访问:
URL url = new URL("https://localhost:443/example");
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setHostnameVerifier((s, sslSession) -> true);
conn.setSSLSocketFactory(getSSLContext().getSocketFactory());
int responseCode = conn.getResponseCode();
其中getSSLContext()
方法用于获取SSL上下文。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Tomcat网站发布配置方案详细说明 - Python技术站