0

我正在使用LocationMatchApache 指令将一些逻辑应用于 AngularJS 应用程序。为了测试,我的正则表达式只涵盖一种状态, http: //my.ui.com/login

阿帕奇

<LocationMatch "^/(login)(.*)">
    Redirect "/login" "/login2"
</LocationMatch>

这个简单Redirect的用于检查块是否已被触发。当我直接到达上面的 URL 时(假 URL,抱歉我不能分享真实的应用程序),我可以通过观察 URL 栏看到重定向工作。但是,如果我使用按钮导航到此状态ui-sref,则永远不会触发 LocationMatch 块。这是相关的 AngularJS 代码,我使用的是 ui-router 库:

界面状态

$stateProvider.state('login', {
    url: '/login',
    templateUrl: 'login.html',
    controller: 'LoginCtrl'
});

按钮(单击不会触发 Apache)

<button class="md-button" ui-sref="login">Login</button>

我猜是因为 AngularJS 应用程序是一次性加载的,当 stateChange 发生时没有读取磁盘。有谁知道 Apache 检测 AngularJS 应用程序状态变化的更好方法?

4

0 回答 0