springboot+react项目部署中遇到的相关问题及解决办法

1.react打包

进入到my-app(项目文件夹)目录下, npm run build即可

2.打包后点击index.html是空白页

package.json最下面加上homepage就行,然后重新build

"homepage":"."

 springboot+react项目部署中遇到的相关问题及解决办法_第1张图片

3.打包后的build文件夹里的文件放在哪里

springboot+react项目部署中遇到的相关问题及解决办法_第2张图片

4.index.html在springboot里打开又白页或报错了

在application.properties里添加如下代码

spring.mvc.view.prefix=classpath:/templates/
spring.mvc.view.suffix=.html
spring.mvc.static-path-pattern=/static/**

如果文件目录结构和我一样的话,继续在index.html里找包含/static的代码,在./static之前加一个../,这样就能顺利打开了

5.添加Spring Security后数据库数据连不上了

经过查询资料可知,Spring Security默认开启CSRF防护,如果是spring boot项目,在启用了@EnableWebSecurity注解后,CSRF保护就自动生效了。所以在默认配置下,即便已经登录了,页面中发起PATCH,POST,PUT和DELETE请求依然会被拒绝,并返回403,需要在请求接口的时候加入CSRF Token才行。

springboot+react项目部署中遇到的相关问题及解决办法_第3张图片

 所以在配置中加上这句代码就一切正常了

http.csrf().disable();

6. 添加Spring Security后静态资源如图片,css,js等加载不了

这个问题花了一晚上才解决了,一直以为是自己路径出问题了,原来是拦截器的原因。

在SecurityConfig处加上你想要展示的资源的路径就行了

.antMatchers("/","/js/**","/css/**","/image/*","/fonts/**","/**/*.png","/**/*.jpg").permitAll()

 如我要展示的图片是下面的asoul.jpg, 在html加入下面代码即可

A-Soul

springboot+react项目部署中遇到的相关问题及解决办法_第4张图片

原文章

https://blog.csdn.net/wanderlustLee/article/details/80021468?ops_request_misc=&request_id=&biz_id=102&utm_term=Spring%20Security%E5%8A%A0%E8%BD%BD%E4%B8%8D%E4%BA%86%E5%9B%BE%E7%89%87&utm_medium=distribute.wap_search_result.none-task-blog-2~all~sobaiduweb~default-1-.nonecase&spm=1018.2118.3001.4187https://blog.csdn.net/wanderlustLee/article/details/80021468?ops_request_misc=&request_id=&biz_id=102&utm_term=Spring%20Security%E5%8A%A0%E8%BD%BD%E4%B8%8D%E4%BA%86%E5%9B%BE%E7%89%87&utm_medium=distribute.wap_search_result.none-task-blog-2~all~sobaiduweb~default-1-.nonecase&spm=1018.2118.3001.4187

 css加载不了的时候还发现了一个笨方法,直接在html里加上就可以了

7.eclipse将springboot项目打成jar包

1.右击项目,选择Run As - Maven clean
2.右击项目,选择Run As - Maven instal

Tips:如果遇到SpringBoot Unable to find a @SpringBootConfiguration, you need to use @ContextConfigurationl,参考下面的文章

SpringBoot Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration_csdn_am的博客-CSDN博客如异常所译,你需要在注解上加上@SpringBootTest(classes = Application.class)或者使用@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration(classes = {JPAConfig.class})or@RunWith(SpringRunner.class)@ContextConfigu...https://blog.csdn.net/csdn_am/article/details/79757097?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~default-1.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~default-1.pc_relevant_default&utm_relevant_index=2

最后,项目地址是47.106.129.20:8080/,做的很简陋,但还是挺开心的

你可能感兴趣的:(spring,boot,react.js)