图片 保存 绝对路径和相对路径的讨论

数据库中图片保存绝对路径和相对路径的讨论

一、问题

       1新的项目

       前端代码:采用visual studio code开发,采用以vue.js为基础的框架,最常用组件库  Element-UI。 编辑器采用 tinymce。

       后端代码:采用microsoft visual studio开发, 采用webapi和 mvc两种框架。 图片上传采用mvc。

  2问题:前端 tinymce和 后端图片上传部分出问题。本机测试时编辑器存库内容中图片为绝对路径。但是发布到测试机 编辑器存库内容中图片为相对地址。于是问题来了,同样的代码为什么会出现这种情况。

  3前辈说:图片要保存为绝对地址,不然以后图片独立放到一台服务器后会出现问题。前辈解释了很久,我也没听懂。。

二、不懂的原因

  1 tinymce上次图片后显示的地址,是后端程序返回给它的。也就是所tinymce上次图片后显示的地址是后台程序返回的,而不是客户计算机图片所在位置的地址。 但是后台代码每次返回的都是绝对路径,为什么到前端就变成相对的了?

       2、tinymce 本机测试和测试机表现有差异,解决方法:初始化时配置 relative_urls: false。

       3 因为MVC时期 前端代码和后端代码是在一起的,但现在前后端代码几乎完全分离。 虽然图片上传目前还是MVC方式实现的但以后可能也会改为webapi实现。 以后图片也可能独立放到一台服务器,那么前后代码、后端代码、图片数据 将会是完全分离的。到时候就会发现相对路径无法访问图片了。  绝对路径可以避免以后出现这些问题。

  4 如果保存图片服务器的ip或端口变了怎么办? 难道去数据库修改所有ip或端口。答:更新相对固定的ip或端口是比较简单的。

  5 任何人都可以访问这些图片,甚至不用登录!! 这个本项目不考虑,以后如果需要可以建个FTP资源管理器专门用来存储图片资源,FTP可以设置哪些用户组可以访问资源 ,这样只有知道这个用户和密码的人才能图片资源服务器。

posted @   hao_1234_1234  阅读(2650)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示