我正在用 php (codeigniter) 开发一个站点框架,并希望在图像上传时引入图像版本控制,以便我可以利用图像缓存。最简单的方法就是对图像进行 md5 并将其用作文件名,但我不喜欢这种方法,原因如下:
1)图像名称对 SEO 不友好
2)md5 散列看起来不必要地长 - 因此需要更大的数据库字段。
所以我正在考虑使用如下方法:
文件名以输入的图像名称开头,下划线而不是空格,然后添加一个随机生成的整数,比如 8 位长。这意味着我必须通过该名称检查现有图像,然后如果存在整数则重新生成整数(但不太可能)。
大概我还必须为每个图像大小设置唯一的文件名,所以我想这里的解决方案是添加一个代表文件大小的前缀。
现在我想第一次做对,因为一旦部署了框架就很难改变,所以我真的只是在寻找输入
a)我的担忧是否合理(特别是文件名对 SEO 有什么作用,随机数字串的长度是否会影响它)
b)我是否应该关注或检查我提出的方法是否还有其他问题。
c)是否有更简单的方法,也许是产生更短结果的散列算法。
d) 是否已经有一个 ci lib 可以做到这一点?
感谢您的意见和建议