我正在设计图像存储库。我想将文件名与图像 html 链接分开。例如:
- 文件系统中的图像称为
images/items/12543.jpg
- HTML 是
<img src="images/car.jpg" />
有没有人强烈反对我在检索 images/car.jpg
时使用 PHP 重写所有图像请求? , Apache 真正回复的内容来自images/items/12543.jpg
?
我不知道我是否会遇到性能问题。
最佳答案
这可能需要很长时间才能让你遇到实际的性能问题,但是通过 PHP 运行每个资源请求(每个进程,尤其是在连接到数据库或做其他复杂的事情时,占用相当大的内存 在每个请求上)在我看来在架构上是个坏主意。
我建议将文件系统中的 12543
翻译成 car
,然后为它重写一个(更便宜的)URL:
* images/items/car.jpg
* <img src="images/car.jpg" />
另一种想法:像 Stack Overflow 那样做怎么样。将 jpeg 命名为 12543.jpg
并执行
<img src="images/12543/car.jpg">
(car
部分是任意的,仅供用户和搜索引擎使用 - 重写规则真正解析并用于获取图像的只是 12543
和 .jpg
)。
关于performance - 所有网站图片上的 Mod_rewrite,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2943123/