Я создаю свое первое Vue.js приложение.
Я хочу использовать режим истории в моем маршрутизаторе Vue, поэтому мне не нужно использовать URL-адреса hashbang, например localhost:8080/#/login
.
Итак, я установил режим на историю, например, так:
export default new Router({
mode: 'history',
routes: [...]
})
Мои маршруты теперь отображаются как localhost:8080/login
.Однако я не могу напрямую получить доступ к странице входа по этому URL-адресу, так как, когда я обновляю текущую страницу или пытаюсь ввести этот маршрут непосредственно в адресную строку браузера и нажимаю клавишу ввода, я получаю следующую ошибку:
Невозможно получить / войти
Согласно документации Vue , я должен настроить свой сервер, чтобы разрешить это.Для моей настройки они предлагают настроить Apache и использовать mod_rewrite
.
Итак, я создал файл .htaccess
, который содержит следующее объявление mod_rewrite
:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
</IfModule>
НоЯ получаю ту же ошибку при попытке загрузить localhost:8080/login
напрямую.
Я что-то упустил?Может кто-нибудь, пожалуйста, помогите мне разобраться с этим?
Структура каталога моего приложения выглядит следующим образом: