AWS Cloudfront支持vuejs的html5模式

05-13 1529阅读

前提

  • 1.vuejs项目使用html5模式;
  • 2.vuejs项目独立部署在一个s3桶中;
  • 3.vuejs项目独立使用一个AWS Cloudfront的CDN。

    解决

    只需要在Cloudfront中添加一个函数,大概规则就是如果从请求uri中提取到文件名,则表示需要访问s3,如果没有则重写到/index.html请求。

    AWS Cloudfront支持vuejs的html5模式
    (图片来源网络,侵删)

    具体函数内容如下:

    function handler(event) {
    	var request = event.request;
    	if (request.uri.match(/\/[^./]+\.[^./]+$/) === null) {
    		request.uri = "/index.html";
    	}
    	return request;
    }
    

    具体怎么样在AWS Cloudfront中设置函数,可以参考AWS CloudFront使用js函数实现重定向。

    总结

    vuejs的html5模式就是但没有发现文件名就重写到/index.html请求。注意,这里是重写,重写,重写,不是转发。

    参考

    • AWS CloudFront使用js函数实现重定向
    • CloudFront function to support HTML5 History API
VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]