我有这样的图像:
/images/10.png
我有阵列:
$arr = [10 => 'pretty_name'];
是否可以显示图像10.png但使用pretty_name?
<img src="/images/pretty_name.png"/>
我尝试使用正确的标题返回图像(Content-Type:image / png)。它工作但很慢。
我可以用htaccess这样做吗?
答案 0 :(得分:2)
你可以使用.htaccess和类似的东西:
RewriteEngine on
RewriteRule ^/?images/([0-9]+)/.*(\..*)$ /images/$1$2
然后在您的HTML中,您可以编写如下图像网址:
<img src="/images/10/pretty_name.png" />
重写规则将解析出文件名(在本例中为10)以及扩展名(.png)并将其重写为真实路径,忽略&#34; pretty_name&#34;部分完全。
缺点是任何&#34;漂亮的名字&#34;将工作。例如,这些都指向/images/10.png:
/images/10/pretty_name.png
/images/10/something_random.png
/images/10/earth_photo.png
这是因为没有反向检查以确保漂亮的名称与ID匹配。这是否可以容忍取决于您的申请。