所有网站图片上的Mod_rewrite

时间:2010-05-31 11:12:25

标签: performance http mod-rewrite

我正在设计一个图像存储库。我想从图像html链接中解耦文件名。例如:

  • 文件系统中的图像称为images/items/12543.jpg
  • HTML为<img src="images/car.jpg" />

是否有人强烈反对我使用PHP重写所有图像请求,因此在检索images/car.jpg时,Apache确实回复了来自images/items/12543.jpg的内容?

我不知道我是否会遇到性能问题。

1 个答案:

答案 0 :(得分:5)

可能需要很长时间才会遇到实际性能问题,但是通过PHP运行每个资源请求(每个进程,尤其是连接到数据库或执行其他复杂操作时,占用大量内存在每个请求上)在架构上是一个坏主意IMO。

我建议您已经在文件系统中将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)。