当前位置: 首页 > wzjs >正文

如何做网站英文简历模板semester

如何做网站英文简历模板,semester,保健品网站设计,惠州公司网站建设价格背景 在做java端上应用开发的时候,从资源和部署操作成本两方面考虑,一般会将前端的静态资源直接与后端应用一起打包,通过springboot内嵌的Tomcat提供web服务。进入web首页登录一直到后续业务流程正向操作,页面都能正常加载静态资…

背景

在做java端上应用开发的时候,从资源和部署操作成本两方面考虑,一般会将前端的静态资源直接与后端应用一起打包,通过springboot内嵌的Tomcat提供web服务。进入web首页登录一直到后续业务流程正向操作,页面都能正常加载静态资源,但触发页面刷新操作的时候,就出现了Whitelabel Error Page,访问不成功。本文针对此问题做解答。

1. springboot web项目搭建开发

在pom文件中增加thymeleaf依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

配置静态资源处理器:

public class BaseWebConfig implements WebMvcConfigurer {private LoginInterceptor loginInterceptor;private PermissionInterceptor permissionInterceptor;public List<String> whiteUrl = new ArrayList<>(Arrays.asList("/login","/doLogin","/css/**", // 排除css目录下的所有资源"/js/**",  // 排除js目录下的所有资源"/images/**", // 排除images目录下的所有资源"/favicon.ico", // 排除favicon.ico"/static/**" // 排除static目录下的所有资源));// 登录拦截器,后端所有的接口都是api/开头@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(loginInterceptor).addPathPatterns("/api/**").excludePathPatterns(whiteUrl).order(1);}// 静态资源放到html目录下@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/**").addResourceLocations("classpath:/html/");}// 默认进入登录页@Overridepublic void addViewControllers(ViewControllerRegistry registry) {registry.addViewController("/").setViewName("forward:/index.html");}
}

 配置启动thymeleaf

spring.thymeleaf.prefix=classpath:/html/
spring.thymeleaf.suffix=.html
spring.thymeleaf.cache=false

静态文件结构:

|-- src
|   |--main
|   |   |-- resources
|   |   |-- application.properties

|   |   |   |-- html

|   |   |   |   |-- index.html

|   |   |   |   |-- app.js

...

2. 问题暴露

访问后端localhost:8080/login,正常跳转到登录页。登录成功后,浏览器中的地址因为前端自动的路由规则,变成了

localhost:8080/edge?ownerId=jcknuxh&tab=sub1-data-management

看网络请求也都正常

 

在浏览器页面刷新,直接进入Whitelabel Error Page

查看很多网上的教程,有建议直接拦截所有的请求,转发到index.html视图,如下代码:

@Controller
public class IndexController{@GetMapping("{/path})public String index(@PathVariable String path){return "forward:/index.html";}}

然后就出现了错误:

circular view path 

3. 问题解决

解题的思路是参照NGINX加载静态页面,当有不识别的页面的时候,直接跳转到index.html页面。Nginx中的配置如下:

server {listen 80;server_name localhost;root /usr/share/nginx/html;index index.html;location / {try_files $uri $uri/ /index.html;}}

 在springboot中怎么配置呢?

 // 默认进入登录页@Overridepublic void addViewControllers(ViewControllerRegistry registry) {registry.addViewController("/{path;[^\\.]*}").setViewName("forward:/index.html");}

问题就解决了。原理是当遇到不识别的页面的时候,就跳转到首页,首页有对应的js、css请求路由,从而在刷新页面的时候,正常渲染。

http://www.dtcms.com/wzjs/481834.html

相关文章:

  • 网站源码怎么绑定域名如何被百度收录
  • 网站建设力度如何给网站做推广
  • 做家电维修网站能接到单吗爱站工具包怎么使用
  • 珠宝手机网站模板百度指数查询手机版
  • 9420高清在线观看免费大全广东企业网站seo报价
  • 东莞志豪建设公司网站宝鸡seo外包公司
  • 自己想做个网站怎么做的线上推广软件
  • 一网一平台是什么seo公司哪家好用
  • 做餐饮在环保局网站备案平台营销
  • 河池市住房城乡建设网站最能打动顾客的十句话
  • 江苏苏州网站建设如何制作简单的网页链接
  • 江苏连云港网站设计公司seo什么职位
  • 简单网页设计模板代码大全亚马逊seo是什么意思
  • 网站备案证书打印朋友圈广告怎么投放
  • 城阳做网站找哪家搜外
  • word超链接网站怎样做cps推广平台
  • 河南企业网站建设公司sem是什么意思的缩写
  • 网站营销与推广网络推广方案的内容
  • 食品 药品 监督 网站 源码 php十大搜索引擎神器
  • 中国化学工程第六建设有限公司河南seo排名
  • 做ppt的网站 知乎郑州官网网络营销外包
  • 政府网站建设 重要性网站推广有哪些方式
  • 做山西杂粮的网站优化师
  • 想做淘宝 网站怎么做外链发布平台大全
  • bootstrap响应式网站2021全国大学生营销大赛
  • 如何提升网站的权重个人如何做网络推广
  • 关于建设工程招标的网站流量平台有哪些
  • 代理分佣后台网站开发微信推广
  • 大家都在哪些网站做宣传站长之家权重
  • 一个网站如何产生流量网站优化网络推广seo