nginx 托管vue项目配置

server {
    listen 80;
    server_name your_domain.com;

    location / {
        root /path/to/your/vue/project;
        index index.html;
        try_files $uri $uri/ /index.html;
    }
}

奇怪的现象,在vue路由中/会跳转到/abc/def,但如果直接输入/abc/def会显示404,添加

try_files $uri $uri/ /index.html;

这行后就好了,因为 Nginx 的配置中没有正确处理路由重定向和前端路由的问题。

Vue 使用的是前端路由,所以在浏览器中直接访问 /abc/def 时,Nginx 默认会认为这是一个静态文件或目录,因此会返回 404 错误。

要解决这个问题,你需要在 Nginx 的配置文件中添加一个位置匹配规则,将所有请求都重定向到 index.html 文件,这样 Vue 路由就能正常处理路径。

你可能感兴趣的:(MakeLifeEasy,vue.js,nginx,前端)