ubuntu Nginx+tomcat 部署web项目
最近学习了一下java web方面的知识,最后终于把项目部署到了阿里云服务器上,还是遇到了一些难点,记录总结一下
首先就是网上资料中,jdk都比较老了,最新的jdk14,没有了jre,这样导致了tomcat中关闭服务时会出现一个某个jre命令not found的错误,后来把jre_home在环境变量中去掉就好了
其次就是Nginx的问题,开始不能成功进行80端口的监听并且转发给tomcat的8080端口,不过后来参照了一篇博客的配置https://blog.csdn.net/qq_37604508/article/details/78858857,还是成功了,之后访问自己的项目,地址后就不用再加8080端口了,因为nginx会转发过去,至于均衡负载之类的,本次没有尝试,就做了最基本的功能,以后用到可以再看。
其他就是一些杂事了,阿里云后台需要手动开放一些端口,配置mySQL数据库,参照这个可用https://blog.csdn.net/weixx3/article/details/80782479,并把自己的测试数据库迁移过来,可以用Navicat的SQL转储功能,生成整个数据库脚本再在新库上运行即可。
了解了一个好用的windows和Linux系统上好用的文件传输工具,pytty,安装和使用在这里https://blog.csdn.net/qq_36306340/article/details/78347796,解决了我安装最新jdk的问题,之前的项目代码是用github作为中转站传输的,也不错,但大一点的文件就要用putty了
最后思考了一下apache或者nginx的virtualhost功能,之前怎么也想不通,为什么两个域名指向同一个 ip地址,DNS解析之后应该只有ip地址,请求发送到这个ip地址后,是怎么区分出他是从通过哪个域名访问而来的呢?查了很多资料之后知道了,http的访问头里有host字段,所以通过他来判断匹配virtualhost的servername实现不同的转发,之前也是想偏了,倒也解决了一个疑惑。
也就是这些啦,这些东西不用还是会忘了的,记录下来,以后查找方便,很多资料都是过时不能用的,所以亲测可用的记录还是十分必要的。