疫情期间响应国家号召,在家待着不出门,但是又有点无聊,就搞起来一直想搞又没时间搞的服务器。网上的例程都是基于本地模拟服务器的,他们的配置方法在本地用都是好用,等到真正部署服务器的时候就出问题了,我折腾了好几天,终于部署成功,特开此贴,分享一下期间遇到的坑,废话不多说直接开始讲解。
我用的服务器是租用的阿里云服务器,系统是windows server2008 R2,选用这个系统的原因是图形界面,操作相对简单,首先做好准备工作,下载FreeSSHd,这个软件是为了idea用stfp方式连接服务器,关于怎么下载和安装我就不做过多赘述了,网上有很多教程。再一个就是下载tomcat,官网https://tomcat.apache.org/,这个软件都是免费的,直接去官网下载压缩包就行了,我下载的是最新版本,tomcat9,本地解压一份,服务器解压一份,服务器解压完要进行一个简单的配置,打开bin目录,找到startup.bat,记事本打开,在第一行后面添加几句话
set CATALINA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.rmi.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=写你服务器ip
set JAVA_OPTS=-Dcom.sun.management.jmxremote= -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.rmi.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
SET JAVA_HOME = C:\Program Files\Java\jdk1.8.0_201
SET CATALINA_HOME = C:\Program Files\apache-tomcat-9.0.31
SET JAVA_HOME后面写的jdk安装目录,SET CATALINA_HOME后面写的是tomcat安装目录
-Dcom.sun.management.jmxremote.port=9999 这个后面9999的端口号就是IDEA配置tomcat时候jmx的端口号,记住它,你也可以改成其他的端口号,只要不冲突就行了。
|
|
|
接下来配置第二个文件,service.bat,同样记事本打开,前面填一句话
SET CATALINA_HOME = C:\Program Files\apache-tomcat-9.0.31
|
|
|
第三个文件shutdown.bat,记事本打开前面添加
SET JAVA_HOME = C:\Program Files\Java\jdk1.8.0_201
SET CATALINA_HOME = C:\Program Files\apache-tomcat-9.0.31
|
|
|
接下来在系统变量中添加三个变量CATALINA_HOME,CATALINA_BASE,TOMCAT_HOME,值都为tomcat的安装路径,然后在系统变量中找到path,末尾添加;%CATALINA_HOME%\lib;%TOMCAT_HOME%\bin(注意前面的分号,也要加上,原先最后面有分号就不用加了)。
|
|
|
|
|
|
至此tomcat配置完毕,接下来配置idea。
新建工程选择Java Enterprise,图中1,选择new添加本地tomcat,在选中2和3 然后next。
|
|
随便起个名字找个路径,下面的more setting不用管,默认就可以,然后finish。
|
|
点edit configurations…
|
|
先点左上角的+号,然后选择tomcat Server,在选择Remote。
|
|
Type处选择stfp,然后点击红圈处的三个点。
|
|
先点左上角的+,然后选择sftp,弹出此对话框,随便写个名字就行了。
|
|
Host填写你服务器的ip地址;
User Name填你用上文说到FreeSSHd软件创建账户的用户名;
Password填写该用户的密码;
Root Path填/就行了;
Web server URL填http://你的服务器ip地址加:8080;
Test Connection按钮可以测试IDEA能否成功连接服务器,如果连接不成功,要么检查FreeSSHd软件设置,要么查看端口是否打开,用idea远程部署项目时一定要把服务器所有端口都打开,因为它会用到几个随机端口。
|
|
接下来点Mappings,Local path就是你本地工程目录,Deployment path点后面的小文件夹选择到你服务器中tomca目录下的wenapps的路径,其他默认,点击ok。
|
|
URL填写你服务器地址加端口号8080例如http://11.11.11.11:8080,JMX PORT就是上文在文件添加的端口号,一定与之对应。
Path from root的填写方式与刚才Deployment path的填写方式一样,路径也一样。
Mapped as中把盘符加上,路径与Path from root相同。Host也填写服务器IP
|
|
再点击上面Department,然后点击右侧+,选择Artfiact…
|
|
之后选择服务器的Tomcat,然后点三角运行就ok了。
|
|
|
|
|
需要注意的几个地方,一定要把服务器的所有端口都打开,那几个路径一定按照我的要求设置,不要瞎搞,否则会出问题;服务器的jdk版本和本地要一样。在配置方面如果还有问题请在下方留言我们共同进步。
|
|
|
最近发现文章漏掉了一个关键信息,是FreeSSHd中sftp路径的问题,这篇例程的基础是FreeSSHd中sftp的路径为C盘根目录。