1.bug場景
做圖片上傳 功能是,發現圖片上傳至項目下後無法通過ip:port/路徑訪問,重啓項目是就可以正常訪問。
2.bug原因
這是因爲對服務器的保護措施導致的,服務器不能對外部暴露真實的資源路徑,需要配置虛擬路徑映射訪問。
3.bug解決
@Configuration
public class ResourceConfigAdapter extends WebMvcConfigurerAdapter {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
//獲取文件的真實路徑
String path = System.getProperty("user.dir")+"\\work_project\\src\\main\\resources\\static\\pciture\\";
String os = System.getProperty("os.name");
if (os.toLowerCase().startsWith("win")) {
registry.addResourceHandler("/picture/**").
addResourceLocations("file:"+path);
}else{//linux和mac系統
registry.addResourceHandler("/picture/**").
addResourceLocations("file:"+path);
}
super.addResourceHandlers(registry);
}
}
①:我的上傳圖片的目錄結構
②:結果