次の問題があります。クライアント側では、次のような角度のあるルーティングがあります。
...
$locationProvider.html5Mode(true);
$routeProvider.
when('/item/:item_id', { reloadOnSearch: false, templateUrl: '/views/main/partials/_item.html', controller: ItemCtrl }).
otherwise({redirectTo: '/login'}); // Default
...
PHPのサーバー側でのルーティング
$req=$_SERVER['REQUEST_URI'];
if(strpos($req,'/login') > -1){
include __DIR__.'/../views/login/index.php';
} else if(strpos($req,'/item/') > -1) {
include __DIR__.'/../views/item/index.php';
else {
include __DIR__.'/../views/login/index.php';
}
クライアントルーティングがIEで実行されると、これからURLが変更されるため、IE以外はすべてうまく機能します
myapp/item/123
このようなものに
myapp/#/item/123
サーバー側がクライアントのルーティング後にこの種のリクエスト URL を受信すると、ハッシュ タグの後のすべてのデータがなくなり、どのルートを使用する必要があるかを区別できません。URL から # を削除したり、IE とサーバー側を平和に保つために何か他のことをしたりできますか? 私はそれを解決しようとして失敗しました。ありがとう