Vue项目nginx服务器部署刷新页面404错误

这篇具有很好参考价值的文章主要介绍了Vue项目nginx服务器部署刷新页面404错误。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近想自己做点小项目练手,前端用的是vue框架,用nginx当做服务器来部署。但是当部署完成后,遇到了刷新页面和打开新页面报404错误的问题

问题就像上面描述的一样,刷新页面和打开新页面都是报404错误。
先说最终解决办法,在nginx的配置文件的location中改一下设置方式:

       location / {
            try_files $uri $uri/ /index.html;
       }

location改为这么设置,就好了,具体原理看解决问题的帖子中解释是:
打包后的vue是单页面结构,所有内容都在index.html中渲染加载,改变请求地址后到指定目录下必然找不到,所以会报错,这么设置就是所有请求都回到index.html页面中

下面说说为了解决问题的尝试:

  1. location配置路径到vue的具体路径中(失败)
  2. 云服务端口开放更多(失败)
  3. location配置所有请求用index跳转到index.html(失败)

​一个个解释失败原因:
第一个:location配置路径到vue的具体路径中
这么弄主要还是因为vue项目中有路由的改写,地址栏虽然写的是localhost:8080/a/b/c,但是vue实际跳转时候已经改写为:localhost:8080/d/e/f了,所以当时以为这就可以了,然而看到打包后的dist文件夹后就知道不对了

第二个:云服务端口开放更多
这里开放更多端口,主要还是后期找太久问题找的有点蒙了。。。其实端口开放与否与404没有关系的

第三个:location配置所有请求用index跳转到index.html
这是距离实际成功最近的一回,只是用方式了,想法是对的

location配置中index和try_files是有些不同的
index:主要作用是当没有访问任何文件时,默认访问后面指定的文件,如果想访问的不存在,要么先访问location / {},要么跳转到指定的错误页面
try_files:主要作用是找到并访问指定目录下的某个文件,配置中用$uri 和 $uri/代表所有访问请求都回到这个index.html

不过理论上原来我设置的是:

        location / {
            root   html;
            index  index.html index.htm;
        }

感觉也应该可以的啊?还是理解有点浅了,持续学习吧文章来源地址https://www.toymoban.com/news/detail-582023.html

到了这里,关于Vue项目nginx服务器部署刷新页面404错误的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 若依(Ruoyi)前后端分离版项目部署到服务器(Linux环境)后,刷新页面报错:404 Not Found

    原文章: 若依(ruoyi)前后端分离版使用教程之若依后端部署阿里云服务器步骤(超详细)_蓝多多的小仓库的博客-CSDN博客 问题:         在若依项目部署服务器后,可以正常运行,但如果执行刷新页面操作,便会出现404 Not Found。 原因:         Nginx未正确配置。由

    2024年02月17日
    浏览(56)
  • vue项目通过nginx部署到服务器

    部署的服务器是阿里云买的,使用finalShell根据账号秘密链接服务器即可 找到/user/local/nginx/conf/下面的nginx.conf文件进行配置,这里单独新建一个finace.conf文件,配置后再导入到nginx.conf文件,便于管理 这个Nginx服务器配置设置了一个监听端口为8081的服务器,服务器名称设置为127.0.0.

    2024年03月11日
    浏览(49)
  • java+vue 前后端项目部署 服务器部署流程 包括nginx软件安装,服务器选择,域名配置

    现在的web端项目大多数都是java+vue前后端分离的项目,都需要分开来部署,基本上都是部署在云服务器上的,这就涉及到选择和购买服务器,以及安装环境,本文记录的是在机器上安装软件,不在docker和宝塔上安装。下面请看详细的步骤吧,都是自己在工作中使用过的,本人

    2024年02月13日
    浏览(56)
  • 前后端分离用nginx做代理服务器,刷新页面报404 解决方法

    情况一 在nginx配置文件中加上一句话,作用就是nginx代理时候找不到页面会尝试访问这个指定页面,而前端vue项目的话,页面正好是有vue自己进行管理,所以就不会报错了 location /{                 alias /var/www/html/;                 index index.html abc.html;                 tr

    2024年02月09日
    浏览(47)
  • nginx 部署vue项目,页面白屏或者页面刷新出现404问题

    将vue项目打包部署到nginx上面运行 问题一: 运行时页面白屏。 问题二: 页面可以正常显示,当刷新页面的时候页面报404 错误。 页面白屏分析: 我们可以先查看一下nginx下的 logs/error.log 日志文件,确定我的问题是因为项目打包时候路劲配置问题。 页面404分析 :我们在将

    2024年02月15日
    浏览(38)
  • 华为云云服务器评测 宝塔+nginx 同时部署Springboot、Vue项目

    华为云云服务器评测 第一章 [linux实战] 华为云耀云服务器L实例 Java、node环境配置 华为云云服务器评测 第二章 [linux实战] Unbutnu添加SSH Key、启动Springboot项目 华为云云服务器评测 第三章 [linux实战] 使用Vue3、Element-plus菜单组件构建轮播图 华为云云服务器评测 第四章 [linux实战

    2024年02月10日
    浏览(57)
  • 如何在linux服务器上用Nginx部署Vue项目,以及如何部署springboot后端项目

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 提示:这里可以添加本文要记录的大概内容: 本文内容记录如何在Linux(Ubuntu)系统上安装Nginx,并部署打包好的Vue前端项目,最后通过浏览器访问。 提示:以下是本篇文章正文内容,下面案例可供参考

    2024年04月16日
    浏览(45)
  • 使用nginx方向代理部署Vue项目刷新页面404的问题解决

    部署出现的问题为:由于项目中使用的vue router 项目直接使用node环境部署项目,在同一个路由如: 192.168.1.30:/home刷新浏览器正常 nginx部署刷新不出现404 /nginx not found 如何解决? 以下是我的想法:似乎是nginx代理使其直接访问文件,而没有使项目的路由生效从而正确加载资源 这

    2024年02月07日
    浏览(52)
  • Windows服务器,通过Nginx部署VUE+Django前后端分离项目

    基本说明 安装 Nginx 部署 VUE 前端 部署 Django 后端 Django admin 静态文件(CSS,JS等)丢失的问题 总结 本文介绍了在 windows 服务器下,通过 Nginx 部署 VUE + Django 前后端分离项目。本项目前端运行在 80 端口,服务器端运行在 8000 端口。因此本项目使用 Django 的 runserver 命令进行部署

    2024年02月05日
    浏览(58)
  • nginx 部署vue项目,路由模式为history时,页面刷新404问题

    nginx部署vue项目,文件放在html下的dist文件夹中 nginx.conf 文件中,server 里配置文件的位置、请求跨域等信息 在启动项目后因为配置的是root,首先是找不到html下面的sys-test文件夹,再经过配置修改为alias配置后,刷新又会报404错误,最终配置为如下,成功解决 因为打包部署后,

    2023年04月08日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包