JSP项目迁移到Ubuntu的完整步骤
迁移前需收集原项目的关键信息:JDK版本(如OpenJDK 8/11)、Tomcat版本(如9.x)、项目依赖(如数据库驱动、第三方库)、数据库配置(如MySQL版本、表结构)、环境变量设置(如JAVA_HOME、CATALINA_HOME)。这些信息能避免兼容性问题,确保迁移顺利进行。
Ubuntu系统需先安装与项目匹配的JDK。以OpenJDK 11为例,操作如下:
# 更新软件包列表
sudo apt update
# 安装OpenJDK 11
sudo apt install openjdk-11-jdk
# 验证安装(输出版本信息即成功)
java -version
若项目使用其他版本(如JDK 8),将命令中的openjdk-11-jdk替换为openjdk-8-jdk即可。
Tomcat是JSP应用的Servlet容器,需正确安装并配置:
# 下载Tomcat 9(以最新稳定版为准)
wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.85/bin/apache-tomcat-9.0.85.tar.gz
# 解压到/opt目录
sudo tar -zxvf apache-tomcat-9.0.85.tar.gz -C /opt/
# 创建软链接(方便管理)
sudo ln -s /opt/apache-tomcat-9.0.85 /usr/local/tomcat
# 配置环境变量(编辑~/.bashrc或/etc/profile)
echo 'export CATALINA_HOME=/usr/local/tomcat' >> ~/.bashrc
echo 'export PATH=$PATH:$CATALINA_HOME/bin' >> ~/.bashrc
source ~/.bashrc # 使环境变量生效
# 启动Tomcat并设置开机自启
sudo /usr/local/tomcat/bin/startup.sh
sudo systemctl enable tomcat9 # Ubuntu 22.04+使用tomcat9服务名
验证Tomcat是否启动成功:浏览器访问http://localhost:8080,若出现Tomcat欢迎页面则配置正确。
将原项目迁移到Ubuntu的Tomcat容器中:
WEB-INF等目录),将其复制到Tomcat的webapps目录:sudo cp -r /path/to/original-project/* /usr/local/tomcat/webapps/your-app-name/
your-app.war),复制到webapps目录,Tomcat会自动解压:sudo cp /path/to/your-app.war /usr/local/tomcat/webapps/
部署完成后,Tomcat会自动部署应用,可通过http://localhost:8080/your-app-name访问。
若项目依赖MySQL等数据库,需安装并配置数据库:
# 安装MySQL Server
sudo apt update
sudo apt install mysql-server
# 启动MySQL并设置开机自启
sudo systemctl start mysql
sudo systemctl enable mysql
# 运行安全配置脚本(设置root密码、移除匿名用户等)
sudo mysql_secure_installation
# 登录MySQL
sudo mysql -u root -p
# 创建数据库和用户(示例)
CREATE DATABASE your_database CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON your_database.* TO 'your_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
修改项目中的数据库配置(如WEB-INF/web.xml或context.xml),更新数据库URL、用户名和密码。
访问http://localhost:8080/your-app-name(替换为你的应用名称),检查以下内容:
/usr/local/tomcat/logs/catalina.out)排查错误信息。sudo ufw allow 8080/tcp
sudo ufw reload
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d your-domain.com
按提示完成证书申请,Certbot会自动修改Nginx配置并重启服务。sudo apt update && sudo apt upgrade);