Как получить доступ к маршруту Vue напрямую - PullRequest
0 голосов
/ 03 февраля 2019

Я создаю свое первое 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 напрямую.

Я что-то упустил?Может кто-нибудь, пожалуйста, помогите мне разобраться с этим?

Структура каталога моего приложения выглядит следующим образом:

enter image description here

1 Ответ

0 голосов
/ 03 февраля 2019

Файл .htaccess - это файл конфигурации для веб-сервера Apache.localhost:8080 является сервером разработки и не запускается Apache, поэтому файл .htaccess там не используется.

Сервер разработки должен автоматически выбрать URL-адрес.Если этого не происходит, наиболее вероятным виновником является неверный базовый URL или общедоступный путь или заданный производственный вариант.Например, если вы установите его на /app/, вам необходимо получить доступ к localhost:8080/app/login, чтобы перейти на страницу входа.Поскольку установлена ​​переменная среды NODE_ENV, вы можете установить открытый путь / для сервера разработки, сохраняя при этом собственный открытый путь для производственной сборки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...