diff --git a/.gitignore b/.gitignore index 7f9ea881f..dc8aacb74 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,6 @@ nbdist/ server/src/main/cache/ server/src/main/file/ +### temp files ### +__pycache__/ +*.dmp \ No newline at end of file diff --git a/server/src/main/config/application.properties b/server/src/main/config/application.properties index 251f5d691..bbe64cdba 100644 --- a/server/src/main/config/application.properties +++ b/server/src/main/config/application.properties @@ -2,6 +2,7 @@ server.port = ${KK_SERVER_PORT:8012} server.servlet.context-path= ${KK_CONTEXT_PATH:/} server.servlet.encoding.charset = utf-8 +server.forward-headers-strategy=NATIVE #启用GZIP压缩功能 server.compression.enabled = true #允许压缩的响应缓冲区最小字节数,默认2048 diff --git a/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java b/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java index f7a0ee8e3..1a356ca35 100644 --- a/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java +++ b/server/src/main/java/cn/keking/web/filter/BaseUrlFilter.java @@ -48,7 +48,9 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha baseUrl = configBaseUrl; } else { //3、默认动态拼接 baseUrl - baseUrl = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + String port = (("https".equals(request.getScheme()) && request.getServerPort() == 443)) || ("http".equals(request.getScheme()) && request.getServerPort() == 80) + ? "" : ":" + request.getServerPort(); + baseUrl = request.getScheme() + "://" + request.getServerName() + port + servletRequest.getContextPath() + "/"; } diff --git a/server/src/main/java/cn/keking/web/filter/TrustHostFilter.java b/server/src/main/java/cn/keking/web/filter/TrustHostFilter.java index e40120471..ac52407a2 100644 --- a/server/src/main/java/cn/keking/web/filter/TrustHostFilter.java +++ b/server/src/main/java/cn/keking/web/filter/TrustHostFilter.java @@ -13,6 +13,7 @@ import javax.servlet.ServletResponse; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.core.io.ClassPathResource; import org.springframework.util.FileCopyUtils; @@ -51,11 +52,19 @@ public void doFilter(ServletRequest request, ServletResponse response, FilterCha } public boolean isNotTrustHost(String host) { - if (CollectionUtils.isNotEmpty(ConfigConstants.getNotTrustHostSet())) { - return ConfigConstants.getNotTrustHostSet().contains(host); - } - if (CollectionUtils.isNotEmpty(ConfigConstants.getTrustHostSet())) { - return !ConfigConstants.getTrustHostSet().contains(host); + while(StringUtils.isNotBlank(host)){ + if (CollectionUtils.isNotEmpty(ConfigConstants.getNotTrustHostSet()) && ConfigConstants.getNotTrustHostSet().contains(host)) { + return true; + } + if (CollectionUtils.isNotEmpty(ConfigConstants.getTrustHostSet()) && ConfigConstants.getTrustHostSet().contains(host)) { + return false; + } + //try sub domain + if (host.contains(".")) { + host = host.substring(host.indexOf(".")+1); + } else { + return false; + } } return false; } diff --git a/server/src/main/resources/web/fileNotSupported.ftl b/server/src/main/resources/web/fileNotSupported.ftl index 78a3d5e46..23f2a8de5 100644 --- a/server/src/main/resources/web/fileNotSupported.ftl +++ b/server/src/main/resources/web/fileNotSupported.ftl @@ -33,12 +33,26 @@
+
- 该(${fileType})文件,系统暂不支持在线预览,具体原因如下:
+ 该(${fileType})文件,系统暂不支持在线预览,具体原因如下:
${msg}
+ + 你可以 下载 文件( )本地查看。 +有任何疑问,请加入kk开源社区知识星球咨询:https://t.zsxq.com/09ZHSXbsQ