相关疑难解决方法(0)

S3 Static Website Hosting路由指向Index.html的所有路径

我使用S3来托管一个将使用HTML5 pushStates的javascript应用程序.问题是如果用户为任何URL添加书签,它将无法解析为任何内容.我需要的是能够获取所有URL请求并在我的S3存储桶中提供root index.html,而不仅仅是执行完全重定向.然后我的javascript应用程序可以解析URL并提供正确的页面.

有没有办法告诉S3为所有URL请求提供index.html而不是重定向?这与设置apache以通过提供单个index.html来处理所有传入请求类似,如下例所示:https://stackoverflow.com/a/10647521/1762614.我真的想避免运行Web服务器来处理这些路由.从S3做一切非常有吸引力.

redirect routing amazon-s3 amazon-web-services pushstate

225
推荐指数
13
解决办法
8万
查看次数

我可以告诉浏览器同步总是使用一个.html文件吗?(对于html5mode链接)

我在gulp文件中使用browser-sync(https://github.com/shakyShane/browser-sync)进行开发.我想在我的角应用程序中使用html5mode.对于该服务器,需要将多个url模式路由到单个html文件.暂存和生产服务器已经这样做但我也想在开发期间启动并运行它.

以下是我运行browser-sync服务器的方法(部分gulpfile.js):

gulp.task('serve', function () {
    browserSync.init(null, {
        server: {
            baseDir: [APP_PATH]
        }
    });

    // watch only for app specific codes;
    ...
});
Run Code Online (Sandbox Code Playgroud)

为了更清楚,在我的app js我指示angular使用html5mode进行路由:

$locationProvider.html5Mode(true);
Run Code Online (Sandbox Code Playgroud)

在我的APP_PATH中,我有一个index.html在访问browser-sync服务器时提供的服务.我需要的是browser-sync为每个路径提供这个单个文件.

因此,例如,如果我尝试/users/2从根路径开始到达路径,一切都很好; 然而,如果我刷新页面或尝试/users/2直接到达,browser-sync告诉它找不到合适的文档 - 这一切都很好,可以理解,但我想知道是否有任何方法可以告诉browser-sync内置服务器只提供一个文件.如果没有,有人可以建议其他选择吗?我应该只运行快速服务器并browser-sync通过它告诉代理吗?

javascript node.js angularjs

14
推荐指数
2
解决办法
5769
查看次数