2

問題は次のとおりです。URLがwww.some.comの場合はホームページにアクセスできませんが、www.some.com/#!またはwww.some.com/#!/

デフォルトの Web アプリ ルートを定義しました。

$routeProvider.when('', {templateUrl: pathToIncs + 'home.html', controller: 'homeController'});
$routeProvider.when('/', {templateUrl: pathToIncs + 'home.html', controller: 'homeController'});

それ以外のオプションを追加:

$routeProvider.otherwise({redirectTo: '/404'});

そしてhtml5モードのターン

$locationProvider.html5Mode(false);
$locationProvider.hashPrefix('!');

前に言ったように、 www.some.com /# のように ulr から来たときに機能します。ただし、www.some.comの場合はそうではありません。この場合、.otherwiseオプションが呼び出されます。

それ以外の場合、ルーティングはうまく機能します。私のアプリでは、www.some.com/#!/login、www.some.com/#!/signup のような URL を取得しました。

PSサーバー側はphp5 + nginx PPSで動作します私はngRouteモジュールでAngular 1.2.0を使用しています

4

1 に答える 1

2

< base > タグを設定してみてください。

<head>
  <base href="/">
</head>

自宅までのルートを定義する

.when('/home', {
        templateUrl: pathToIncs + 'home.html', 
        controller: 'homeController'
 })

「/」でredirectToを使用する

.when('/', {
    redirectTo: '/home'
})

.otherwise とともに

.otherwise({
    redirectTo: '/home'
});
于 2015-11-08T04:55:44.393 に答える