Ant Design Pro 部署到 aliyun oss 遇到的一个小问题

  以往我们都是买一台服务器托管,然后把前端页面和后端服务放在同一台机器上,把域名解析到这台服务器,通过nginx绑定域名,并指向到前端页面所在目录,前端页面请求接口,就配置nginx代理转发,比如匹配到 '/xxxx',就转发到后台服务上。

 

       但是我们现在决定把前端页面(html,js,css,图片等其他静态资源)部署到 (阿里云对象存储服务(Object Storage Service,简称 OSS),然后后台接口允许跨域请求。

 

       这些都设置好后,我就把 Ant Design Pro 的项目打包上传到aliyun oss,一切都很正常,但是就不能刷新页面,一刷新页面就报这样的错误,错误信息:This XML file does not appear to have any style information associated with it. The document tree is shown below.

 

如图

Ant Design Pro 部署到 aliyun oss 遇到的一个小问题

 

       这个问题跟前端路由有关系,Ant Design Pro(>=2.0) 使用 UmiJS ,umi 默认是用的 Browser History,如果要用 Hash History,需配置:

 

export default {

    history: 'hash',

}

       

       如果我们使用默认配置(Browser History),以前我们需要在nginx里这样配置:

 

location / {

        # 用于配合 browserHistory使用

        try_files $uri $uri/ /index.html;

    }

 

       而在 aliyun oss 里,我们可以通过在 基础设置 --> 镜像回源 来设置,也可以达到这样的效果。

        设置如下:

图1

Ant Design Pro 部署到 aliyun oss 遇到的一个小问题

图2

Ant Design Pro 部署到 aliyun oss 遇到的一个小问题

           设置完立即生效,再刷新页面,就正常了。