Vue Маршрутизатор с сервером CFML (Lucee) - PullRequest
0 голосов
/ 06 февраля 2020

У меня есть стандартный Vue Маршрутизатор - он отлично работает с навигацией, например <router-link to="/test">test</router-link>, но когда я пытаюсь ввести ULR в браузере, например http://127.0.0.1: 8889 / test - это перезагрузить страницу и выдает ошибку 404.

В качестве серверной части я использую CFML (Lucee).

Vue код - маршруты. js

import Home from './components/home.vue' 
import Test from './components/articleView.vue' 

export const routes = [     
{ path: '/', component: Home},     
{ path: '/test', component: Test} 
]

index. js

import { routes } from './routes'
Vue.use(VueRouter); 
const router = new VueRouter({   
mode:'history',   routes 
})

new Vue({     
el: '#app',     
router,     
render: h => h(App)   
})

Не могли бы вы дать мне подсказку, где копать?

1 Ответ

0 голосов
/ 06 февраля 2020

Вам необходимо выполнить настройку переписывания URL вашего веб-сервера, чтобы каждый загруженный маршрут истории также указывал на ваш единственный vue индексный файл приложения. Не знаю, какой веб-сервер вы используете. Но предположим, что ваш vue файл индекса приложения в Tomcat index.cfm будет выглядеть следующим образом:

#Let all static files load CSS,IMG,JS etc normally
RewriteCond %{REQUEST_URI} .*\.(cfc|cfm|map|css|js|html|png|jpg|jpeg|gif|txt|ttf|json|woff|ico)$ [OR]
RewriteRule ^(.*)$ - [L]

#Route everything else to index.cfm
RewriteRule ^(.*)$ /index.cfm$1 [L,QSA]
...