【发布时间】:2016-05-04 16:07:12
【问题描述】:
我有一个在 Homestead 中运行的 Laravel 5.2 设置,并使用 Vue.js 路由器构建一个 SPA。我正在尝试从我知道可以完成的 URL 中完全删除 #hash,但我不断收到错误:
我已将rewrite ^(.+)$ /index.html last; 添加到我在 Homestead 中的 vhosts 文件中:
server {
listen 80;
listen 443 ssl;
server_name app.myproject.dev;
root "/home/vagrant/Code/vibecast/app.myproject.com/public";
rewrite ^(.+)$ /index.html last;
index index.html index.htm index.php;
charset utf-8;
...
}
当我重新启动并打开一个页面时,我得到一个500 Internal Server Error。
我需要在 Laravel 的路由中添加什么吗?
var router = new VueRouter({
hashbang: false,
history: true,
linkActiveClass: "active"
})
我可以在没有#hash(或修改后的主机文件)的情况下使用它,但在我重新加载页面时会失败。
【问题讨论】:
-
您可以在路由文件的末尾添加一条获取路由,并将其作为路由
'/{a?}/{b?}/{c?}/{d?}/{e?}/{f?}/{g?}/',这样您就可以在它之前注册 api 路由。 -
谢谢。在什么情况下我应该在路线中添加它?
标签: javascript laravel routing vue.js homestead