配置环境
安装JDK
export JAVA_HOME=/usr/src/java/jdk1.8.0_151export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH=${JAVA_HOME}/bin:${PATH}
source /etc/profile
java -version
安装tomcat
安装mysql
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 yum -y install mysql-community-server
systemctl start mysqld.service
service mysqld status
mysql -u root -p
set global validate_password_policy=0; set global validate_password_length=8;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root/123';
FLUSH PRIVILEGES;
mysql远程连接
update user set host = '%' where user = 'root';
FLUSH PRIVILEGES;
编码配置
- 设置mysql客户端默认字符集为utf8[mysql]default-character-set=utf8
- mysql服务端使用的字符集默认为8bit编码的latin1字符集,设置字符集为 utf8character-set-server=utf8
开启防火墙操作
firewall-cmd --state
systemctl start firewalld.service
systemctl enable firewalld.service
firewall-cmd --list-ports;
firewall-cmd --zone=public --add-port=XXXX/tcp --permanent
firewall-cmd --reload
部署Web项目
下面以Linux操作系统上对SSM聚合工程的部署举例
需要注意的是,当操作需要跨设备、跨局域网或跨互联网通信时,需要使用 IP 地址,那么项目中的请求路径 localhost 需替换为服务器 IP;数据库需要切换为远程数据库,不要忘记更改配置文件中对应的的数据库名称与密码;以及需要考虑跨系统兼容性,文件路径 Windows 用反斜杠 \ Linux 用正斜杠 /,以及文件名、路径大小写敏感的差异,Windows 不区分大小写,Linux 严格区分大小写。
更改完后找到 ham-parent 的右侧 maven 视图,对该工程进行打包,打包父工程执行 package
父工程打包成功后,所有子模块的打包也会自动全部打包好,将这三个war包上传到服务器的 tomcat 的 webapps 目录下
修改 tomcat目录/conf/server.xml,添加如下内容
<Service name="Catalina1"> <Connector port="8086" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" /> <Engine name="Catalina1" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> <Context docBase="ham-console-1.0-SNAPSHOT" path="/" reloadable="true"/> </Host> </Engine> </Service> <Service name="Catalina2"> <Connector port="8087" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector port="8011" protocol="AJP/1.3" redirectPort="8443" /> <Engine name="Catalina2" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> <Context docBase="ham-portal-1.0-SNAPSHOT" path="/" reloadable="true"/> </Host> </Engine> </Service> <Service name="Catalina3"> <Connector port="8085" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector port="8012" protocol="AJP/1.3" redirectPort="8443" /> <Engine name="Catalina3" defaultHost="localhost"> <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> <Context docBase="ham-file-1.0-SNAPSHOT" path="/" reloadable="true"/> </Host> </Engine> </Service>开启防火墙,只开放必要端口,阻断所有非必要访问,开放该项目的8080、8085、8086、8087、3306 端口
查看 mysql 运行状态,须保持开启状态
service mysqld status
测试网络连通性, ping 140.143.223.245
进入 Tomcat 的 bin 目录执行 ./startup.sh 运行启动脚本
tomcat 启动成功后就可以访问该项目了,该项目的后台路径为:http://140.143.223.245:8086/index,前台路径为:http://140.143.223.245:8087/index,图片服务器路径为:http://140.143.223.245:8085/。
停止 tomcat 服务进入 Tomcat 的 bin 目录执行 ./shutdown.sh