第一次使用idea进行远程调试,记录一下调试过程
一、服务器设置
首先服务器使用root账号进行tomcat的启动是不支持远程调试的(且root具有最高的权限,因此存在一定的安全隐患),所以我们需要使用普通账号进行tomcat启动。
1.1 服务器新建普通账号
在服务器中输入adduser work
如下图,其中work为设置的普通账号名(可以随意设置)
再设置账号啊密码passwd work
设置账号密码
这样普通账号即创建成功。
使用su work
即可切换账号。
1.2 tomcat设置
在我们新创建的work账号里面重新安装tomcat(这里就不细讲tomcat的安装操作)
tomcat安装完毕后需要修改其service.xml配置与root一样即可。
注意:非root账号的端口号不能低于1000,因此我们这里保持8080端口号。同时还需要在服务器中设置安全组里面的接口进行开发。
然后在tomcat中重新上传war包。
1.3 更改端口
由于微信只支持80端口,我们服务器中tomcat设置的缺失8080端口,这就需要我们进行下面操作来使微信能够服务我们的服务器。
我们需要将80端口的请求转发到8080端口即可。
centos7之前可以使用iptables进行转发,centos7后已无iptables,被Firewalld取代,Firewalld转发时会因服务器的重启而重置,因此我们这里将Firewalld停止,复原iptables
1)停止Firewalld
切换至root用户进行操作,输入如下指令停止firewalld
systemctl stop firewalld.service
systemctl disable firewalld.service
2)安装iptables
yum install iptables-services
3)将80请求导向8080
输入
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
service iptables save
使iptables永久失效,输入如下指令
systemctl restart iptables.service
systemctl enable iptables.service
二、远程调试设置
做远程调试需要先修改tomcat的配置, 在tomcat的bin目录下catalina.sh
输入
vim catalina.sh
修改配置信息,在Catalina.sh中添加如下代码
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8888,server=y,suspend=n"
三、idea远程调试设置
在idea中打开edit configurations
添加remote JVM Debug,进行设置
设置完成即可进行远程调试了