小帅包 2024-12-02 15:18 采纳率: 21.4%
浏览 6
已结题

Linux部署spring boot+vue3前端后端分离项目项目文件上传下载 图片预览没有权限或403 我应该怎么解决

Linux部署spring boot+vue3前端后端分离项目项目文件上传下载 图片预览没有权限或403 我应该怎么解决 前端是Linux中nginx部署的 后端直接启动jar包

  • 写回答

1条回答 默认 最新

  • jmz决明子 2024-12-02 15:47
    关注

    解决方案:
    1.检查nginx中的文件资源目录的读写权限,确保Nginx用户有适当的权限访问文件资源。
    比如在 nginx.conf 内,“#user nobody;”修改为“#user root;”,给nginx用户配置最高权限,可访问服务器下所有的资源目录。一般来说,如果没有跨域或者是nginx配置出错等问题的话,将这个修改后应该就可以了。
    2.若应用和服务器在不同域名,浏览器会阻止跨域请求并返回403错误。这时可以在nginx中配置代理,比如查看pdf文件或图片,假设预览文件或图片地址是 http://xxxx.xxx.xxx.xxx:xxxx/uploadFile/xxx/xxx.png,xxxx.xxx.xxx.xxx:xxxx是应用地址,uploadFile是服务器中存放上传的文件或图片的资源目录,/xxx/xxx.png是uploadFile目录中的图片地址,在nginx配置即:

    server {
        listen 80;   # 监听的端口号
        server_name localhost;  # 或者你的域名
     
        location /uploadFile {
                alias 服务器uploadFile目录地址; # 确保这里写的地址是正确的映射地址
                try_files $uri $uri/ /uploadFile; # 这是Vue单页面应用的重要设置,确保路由正确加载
        }
    }
    

    若实际中您使用的不是uploadFile目录,需要更换为您使用的目录。配置完成后可尝试使用 http://xxxx.xxx.xxx.xxx:xxxx/uploadFile/xxx/xxx.png 地址直接在浏览器地址栏中查看文件是否可正常预览,如果可以,则可在您的项目中使用。
    希望能帮助到您!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月11日
  • 已采纳回答 12月3日
  • 创建了问题 12月2日