我希望能够使用唯一的图像名称接收大量的图像请求(用于跟踪),但我不想将它们全部上载。如何配置我的.htaccess文件,使对imageX.bmp的所有请求(image1.bmp、image12.bmp、image5438.bmp等)都返回相同的图像?
发布于 2010-11-30 02:57:02
使用mod_rewrite非常简单:
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{REQUEST_URI} ^path/to/the/images/image([0-9]+)\.bmp$ [NC]
RewriteRule (.*) /path/to/the/final/image.bmp这应该可以做您想要做的事情,为任何imageX.bmp请求提供image.bmp内容。如果你想深入了解mod_rewrite,here是一个不错的入门教程。
但是,正如Goran建议的那样,将参数附加到URI会更简单,而且可靠性也不会降低多少。
发布于 2010-11-30 00:23:39
我知道这不能完全回答你的问题,但这是我想出来的(假设你使用的是基于Unix的操作系统)。
如果为所有文件名创建文件系统链接,则可以在不使用.htaccess的情况下完成此操作。
例如,您将有一个image.bmp,并链接image1.bmp、image2.bmp。ets指向image.bmp。
您可以使用以下命令创建链接:
ln -s image.bmp image1.bmp
ln -s image.bmp image2.bmp ..。等。
或者使用像下面这样的bash脚本:
#!/bin/bash
for x in {1..50000}
do
ln -s image.bmp image$x.bmp
done这样,您将只为所有请求提供一个文件。
但是,也许有一个更好的方法来解决你的问题!
只需向您的请求添加一个GET参数,如下所示:
http://domain.foo.com/path/image.bmp?number=12334
然后,让web应用程序标记所有请求及其编号。或者将所有请求记录到apache日志中,并在以后解析出来。
希望这些都能对你有所帮助!
发布于 2010-11-30 02:46:33
+1表示使用image.bmp?number=12345而不是image12345.bmp
https://stackoverflow.com/questions/4305527
复制相似问题