url使用connect history api fallback重写

时间:2016-01-13 13:31:12

标签: javascript regex url-rewriting html5-history

我正在使用此库在我的javascript单页应用程序上执行我的URL回退到index.html:https://github.com/bripkens/connect-history-api-fallback

此库适用于以下路线:

mysite.com mysite.com/foo mysite.com/bar

但是,似乎我必须自定义重写方法来处理URLS,例如:

mysite.com/foo/bar

我已经在github上提出了一个issue并得到了作者的一些反馈,但由于我的正则表达式技能绝对是shiz,我无法真正实现这一点。

更新1(2016-01-13 15:27):

我在下面的重写规则示例。正如您所看到的,我对这些规则非常重复,因为我将它们用于mysite.com/bar或mysite.com/foo等每一条路径。更糟糕的是,这不会处理我有mysite.com/{foo}/edit的场景,其中foo显然是一个变量:

            from: /^\/foo\/css\/.*$/,
            to: function (context) {
                return context.parsedUrl.pathname.replace('/foo', '');
            }
        },
        {
            from: /^\/bar\/js\/.*$/,
            to: function (context) {
                return context.parsedUrl.pathname.replace('/bar', '');
            }
        },

1 个答案:

答案 0 :(得分:0)

我今天发现连接历史api后备没有任何问题。我的index.html文件和我的requirejs上都有错误的URL路径。 baseUrl配置。这个问题的答案使我得出结论:mod_rewrite to index.html breaks relative paths for deep URLs