Tôi muốn bật chế độ HTML5 cho ứng dụng của mình. Tôi đã đặt mã sau đây cho cấu hình, như được hiển thị ở đây :
return app.config(['$routeProvider','$locationProvider', function($routeProvider,$locationProvider) {
$locationProvider.html5Mode(true);
$locationProvider.hashPrefix = '!';
$routeProvider.when('/', {
templateUrl: '/views/index.html',
controller: 'indexCtrl'
});
$routeProvider.when('/about',{
templateUrl: '/views/about.html',
controller: 'AboutCtrl'
});
Như bạn có thể thấy, tôi đã sử dụng $locationProvider.html5mode
và tôi đã thay đổi tất cả các liên kết của mình tại ng-href
để loại trừ /#/
.
Vấn đề
Hiện tại, tôi có thể đến localhost:9000/
và xem trang chỉ mục và điều hướng đến các trang khác như thế nào localhost:9000/about
.
Tuy nhiên, vấn đề xảy ra khi tôi làm mới localhost:9000/about
trang. Tôi nhận được đầu ra sau đây:Cannot GET /about
Nếu tôi nhìn vào các cuộc gọi mạng:
Request URL:localhost:9000/about
Request Method:GET
Trong khi nếu lần đầu tiên tôi đến localhost:9000/
và sau đó nhấp vào nút điều hướng đến /about
tôi sẽ nhận được:
Request URL:http://localhost:9000/views/about.html
Mà làm cho trang hoàn hảo.
Làm cách nào tôi có thể kích hoạt góc để có được trang chính xác khi tôi làm mới?