如果IE lt; = 6且<filename> 8.png存在</filename> </filename> </filname>,则将<filename> .png传递给<filename> 8.png

时间:2008-11-11 21:12:27

标签: apache .htaccess png

我刚刚发现通过Photoshop将PNG32转换为PNG8将修复IE中的PNG透明度错误&lt; = 6。

所以我有这个想法,如果客户端使用IE&lt; = 6,为什么不为所有浏览器提供PNG32服务。

对于htaccess / httpd指令,我不是真正的专家,所以我在这里寻求帮助。

标题是伪代码本身。

2 个答案:

答案 0 :(得分:7)

我实际上没有尝试过这个,但我认为它应该有效:

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4.0\ \(compatible;\ MSIE\ [1-6]\.
RewriteCond %{REQUEST_FILENAME} ^(.+)(\.png)$
RewriteCond %18%2 -f
RewriteRule ^(.+)\.png$ $18.png [L,QSA]

第一行打开mod_rewrite(如果已经这样做,可以省略)。 第二个是IE&lt; = 6过滤器。 第三个主要是分割第四行的文件名,检查是否存在&lt; filename&gt; 8.png。第五行实际上是重定向。

答案 1 :(得分:0)

把它放在你的.htaccess

RewriteEngine on
RewriteRule ^/(.*)\.png$ /$18.png [L,QSA]

应该工作。