问题描述

在做一个项目开发的过程中,kkfileview默认部署在本地8012端口,开发测试阶段前端代码中调用kkfileview的服务时是直接用的“ip+端口”的形式,将服务器8012端口直接向外开放,用http协议直接访问

当正式服务器上部署时,都采用https协议进行传输,所以在前端运行时,无法从

1
https://xxxxx域名.com

这个域名的网页中向外发起http服务请求,会报错无法运行,https和http不能混用

解决方法

用nginx对kkfileview进行代理,将

1
https://xxxx域名.com/fileview

转发至服务器8012端口,不光要设置nginx中的转发路由后缀,还要在kkfileview的配置文件application.properties中修改server.servlet.context-path和base.url两个字段

1
2
3
4
5
server.servlet.context-path= ${KK_CONTEXT_PATH:/fileview}
#(“/fileview“为需要的后缀)

base.url = https://xxxx域名.com/fileview
#(base.url填域名+后缀)

注:如果用docker部署的kkfileview(本项目就是),找不到application.propertie文件,使用命令find / -name application.properties

1.png