时间:2022-12-27 18:40
需求背景:项目中需要访问前端工程页面.考虑到两种方案,一种是使用springboot项目直接访问外部静态资源文件(最好是不要将前端工程打包到后端项目中,前后端分离的项目估计也不会直接打包在一块吧);第二种方案是:将静态资源文件直接部署在Nginx服务器上;
一、首先说一下Nginx部署的方法:
Nginx服务之前已经部署到测试服务器了,此处不再介绍部署Nginx步骤,直接说一下如何进行部署前端项目.
1.确保nginx能正常访问,默认是80(此处有坑),直接访问服务器IP即可
2.上传静态文件到指定文件夹下面,修改配置文件nginx.cnf,指定静态资源的绝对路径,以及默认访问的页面
查看nginx.cnf所在目录:
根目录下执行:nginx -t
3.修改配置文件之后重新刷新配置文件
根目录下面执行: /usr/sbin/nginx -s reload
其中/usr/sbin/nginx为ngix安装目录
4.直接访问服务器IP进行访问
访问之后还是显示欢迎页
讲道理,静态资源路径没问题,默认打开的页面设置没问题,默认访问服务器IP会访问到静态资源,但是还是欢迎页.参考过网上说的防火墙以及ngix默认端口80是否开启的方案,但是确认过都没问题.
自己查看过服务端口的占用情况:
根目录下执行:netstat -tnlp,发现有两个端口都在运行
然后用端口19988试了一下问题解决
回头看了一下配置文件:说一下Nginx服务的端口相关的内容:
此处表示的是Nginx服务的端口,设置的是19988以及默认配置80.
二、补充:springboot项目访问外部静态资源(本次测试)
此处涉及到springboot项目访问外部静态资源以及整合shiro中如何对访问路径进行不校验token的设置.
首先说springboot项目访问外部静态资源的设置,此处直接上代码,此处不对配置文件内容进行介绍,可以参考之前写博客
:https://blog.csdn.net/weixin_43401380/article/details/106019927
本项目中具体的配置内容如下(mvc上一个节点是spring):
由于本项目中新增了shiro认证token,访问通过springboot项目访问shiro框架会验证token,所以会报错显示无法找到token.这里需要添加一下不需要进行权限验证的路径,本项目中使用的是配置文件的形式进行配置的.
静态项目存放路径:
本项目中的关于shiro中排除校验的路径配置:
设置好之后访问项目可以直接使用: